Max_topics_in_first_day für TL1-Benutzer scheinen nicht mit dem Blog übereinzustimmen

Basierend auf der Beschreibung hier (Understanding Discourse Trust Levels), Zitat:

Benutzer auf Vertrauensstufe 1 können…
Alle Kernfunktionen von Discourse nutzen; alle Einschränkungen für neue Benutzer werden aufgehoben

Eine der Einschränkungen für neue Benutzer ist (auch Zitat):

Benutzer auf Vertrauensstufe 0 können nicht
Mehr als 3 Themen posten

Ich denke, dies bezieht sich auf die Einstellung max_topics_in_first_day, die in dieser Funktion verwendet wird (GitHub-Link):

  # Zusätzliche Ratenbegrenzungen für Themen: pro Tag und private Nachrichten pro Tag
  def limit_topics_per_day
    return unless regular?
    if user && user.new_user_posting_on_first_day?
      limit_first_day_topics_per_day
    else
      apply_per_day_rate_limit_for("topics", :max_topics_per_day)
    end
  end

Es sieht so aus, als ob new_user_posting_on_first_day nicht genau mit der obigen Beschreibung auf der Blog-Seite übereinstimmt. Seine Implementierung ist:

  def new_user_posting_on_first_day?
    !staff? && trust_level < TrustLevel[2] &&
      (
        trust_level == TrustLevel[0] || self.first_post_created_at.nil? ||
          self.first_post_created_at >= 24.hours.ago
      )
  end

Gemäß dem Code: Wenn ein Benutzer TL1 ist und seinen ersten Beitrag am selben Tag erstellt hat, gibt diese Funktion true zurück und das Limit max_topics_in_first_day wird angewendet.

Gemäß dem Blog: Wenn ein Benutzer TL1 ist, werden alle Einschränkungen für neue Benutzer aufgehoben. Daher gehe ich davon aus, dass max_topics_in_first_day nicht angewendet werden sollte.


Meine Fragen:

  1. Ist dies ein Fehler im Code?
  2. Wenn dies beabsichtigt ist, gibt es dann eine spezielle Einstellung, um die Anzahl der Themen zu steuern, die ein TL1-Benutzer an seinem ersten Tag erstellen kann? Ich hätte sie gerne höher als die für TL0.

Entschuldigung, dass ich mich hier einmische – aber wir versuchen, einen anhaltenden Spam-Angriff auf das Diskussionsforum unseres Produkts zu bekämpfen :cry:

Eine der Lösungen, die wir in Betracht ziehen, ist das automatische Upgrade neuer Anmeldungen auf TL1, wenn sie sich zuvor für unser Produkt (auf einer externen Website) angemeldet haben, und dann alle TL0-Benutzer stark einzuschränken.

Basierend auf dem aktuellen Nutzungsmuster würden unsere legitimen Benutzer immer bei TL1 beginnen, während Spammer bei TL0 beginnen würden. Daher wäre es hilfreich, Themen speziell für TL0-Benutzer raten zu können.

Es scheint, dass eine solche Einstellung nicht existiert. Der Blog legt nahe, dass sie existieren sollte. Daher frage ich mich, ob dies ein Fehler ist. Wenn dies beabsichtigt ist, betrachten Sie meinen Beitrag bitte als Funktionsanfrage :slightly_smiling_face: