Validator-Score-Methodik

Algorithmusversion: v4.8 · Zuletzt aktualisiert: 2026-08-19

FlareWatch weist jedem P-Chain-Validator einen zusammengesetzten Score von 0–100 über 9 Dimensionen zu. Die Mathematik ist deterministisch, die Eingaben stammen aus öffentlichen Chain-Daten [Flare Explorer] [FSE] [Flaremetrics], und der gleiche Algorithmus gilt für jeden Validator im Netzwerk – einschließlich FlareWatch's eigenem Validator-Node, der nach dieser exakten Funktion ohne Sonderbehandlung bewertet wird. Diese Seite dokumentiert jede Dimension und jeden Schwellenwert, damit Betreiber und Staker genau sehen können, wie der Score berechnet wird und warum jeder Wert gewählt wurde. Jede Aussage hier verlinkt auf ihre primäre On-Chain- oder Upstream-Quelle – siehe Quellen & Referenzen am Ende.

Umfang: diese Seite dokumentiert den Validator-Score – was Sie im Staking-Modus auf der Validators-Seite sehen (Delegation von FLR an einen P-Chain-Validator für VRM + MIRROR-Belohnungen). Der FTSO-Provider-Score, der im Delegations-Modus angezeigt wird (Delegation von WFLR an FTSO-Datenprovider), verwendet einen separaten 13-Dimensions-Algorithmus, der sich auf Datenprovider-Performance konzentriert – Genauigkeit, V2-Protokoll-Partizipation usw. Dies sind unterschiedliche On-Chain-Rollen mit unterschiedlichen Belohnungen, die separat bewertet werden. Siehe FTSO-Provider-Score-Methodik für die Delegationsseite.
Kein SGB-Äquivalent: diese Bewertung gilt nur für Flare P-Chain-Validatoren. Der Songbird P-Chain-Validator-Satz ist auf von der Flare Foundation genehmigte Entitäten beschränkt, daher ist Einzelhandels-SGB P-Chain-Delegation selten und der Staking-Tab ist nur FLR. Es gibt keinen FLR/SGB-Umschalter im Staking-Modus. Für SGB FTSO-Delegation siehe FTSO-Provider-Score-Methodik, die beide Chains abdeckt.
Wie wir APY berechnen — was Sie tatsächlich verdienen

Die APY in der Staking-Tabelle ist der Gesamtsatz, den ein Delegator erhält — eine Zahl, keine mentale Mathematik. Sie wird aus Flares Reward-Scripts gemessen (tatsächliche Auszahlungen, nicht eine Formel), abzüglich der Gebühr des Validators, und sie bewegt sich jede Epoche mit echten Rewards. Überall auf FlareWatch bedeutet APY nach der Gebühr und APY bedeutet davor.

Total APR = Staking rewards (VRM) + MIRROR (FTSO-inflation share)
  • Staking-Belohnungen (VRM) – der Netto-Anteil eines Delegators an Validierungsbelohnungen = Σ Delegator-Auszahlung ÷ Σ delegiert (Flare's eigene Aufteilung; die Gebühr ist bereits abgezogen). Da Flare proportional zum Stake zahlt, ist dies im Netzwerk in etwa einheitlich und unterscheidet sich hauptsächlich durch Gebühr – eine niedrigere Gebühr bedeutet eine höhere Delegationsrate.
  • MIRROR – der Anteil Ihres Stakes an der FTSO-Inflation, zusätzlich gezahlt, nur bei Validatoren mit aktivem FTSO-Stack. Dies variiert je nach FTSO-Partizipation des Validators und wird über die letzten Epochen gemessen.

Vergleich mit Flare Systems Explorer? FSE und andere Explorer zeigen nur die Delegationsrate — sie addieren MIRROR nicht — also ist unsere Gesamt-APY bei jedem MIRROR-aktiven Validator höher (die Lücke ist genau die MIRROR-Linie oben). Beide Zahlen sind ~8-Epochen-Trailing-Durchschnitte aus denselben Reward-Scripts-Daten, daher verzögert sich eine Gebührenänderung eines Validators in der Mitte des Fensters gegenüber einem aktuellen Gebühren-Snapshot auf beiden Seiten, bis sie sich durch das Fenster durcharbeitet.

Zwei weitere Zahlen erscheinen im APY-Tooltip und sind nicht der Delegatensatz: die theoretische Baseline (Netzwerk-Brutto-APY × (1 − Gebühr), nur Staking — verwendet als Fallback, bevor genug gemessene Historie vorhanden ist), und die Eigenkapitalrendite des Operators (die Rendite des eigenen Stakes des Validators, verstärkt durch Gebührenerfassung — eine Operator-Metrik, nicht das, was Sie verdienen).

Für Scoring: die Net Yield-Dimension bewertet nur die VRM-Delegationsrate, und MIRROR wird in seiner eigenen Dimension bewertet — daher wird MIRROR niemals doppelt gezählt, obwohl es in der angezeigten Gesamt-APY enthalten ist.

Score-Bänder
90+Top-Tier – Top ~10–20% der Betreiber. Typisches Profil: Full-Stack-Validator + FTSO + FDC, niedrige Gebühr, MIRROR-aktiv, konsistente FIP-10-Zuverlässigkeit, gesunde Delegator-Basis, bedeutungsvolles Eigenkapital. Keine einzelne Dimension erforderlich – Betreiber erreichen Top-Tier durch Stapelung von Stärke über die meisten Kategorien hinweg.
80–89Stark – erfüllt die meisten wichtigen Benchmarks; eine oder zwei Dimensionen unter Top-Tier.
70–79Gut – erfüllt alle Basis-Kriterien; keine großen Lücken.
60–69Akzeptabel – brauchbar, aber nicht differenziert.
<60Unter Median – signifikante Lücken in einer oder mehr Dimensionen. Mathematische Tatsache, keine Qualitätsbewertung.
Dimensionen (summieren zu 100)
Verfügbarkeit20 Punkte max
Was: Kombination aus momentaner P-Chain-RPC-Verfügbarkeit UND historischem FIP-10-Verfügbarkeits-Berechtigungsverhältnis über kürzliche Reward-Epochen.
Wie: RPC-Kurve: ≥ 99,5% → 17 bis 20. 99–99,5% → 13–17. 95–99% → 4–13. 90–95% → 0–4. < 90% → 0. Das Ergebnis wird dann mit uptimeReliability multipliziert (epochsIncluded / epochsObserved über die letzten 8 Reward-Epochen aus öffentlichen reward-scripts-Daten — der vollständige FIP-10-Minimumssatz seit v4.2, nicht nur RPC-Uptime). v3.9 beseitigte eine perverse Klippe bei genau 95%, bei der ein Übergang von 94,99 → 95,00 Uptime 4 Punkte kostete.
if (uptime >= 99.5)   raw = 17 + (uptime - 99.5) * 6
else if (uptime >= 99) raw = 13 + (uptime - 99)   * 8
else if (uptime >= 95) raw = 4 + (uptime - 95) * 2.25    // v3.9: was (u - 95) * 3.25 starting at 0
else                   raw = max(0, uptime - 90) * 0.8   // 90 → 0, 95 → 4 (continuity)
raw = clamp(raw, 0, 20)

reliability = epochsIncluded / epochsObserved   // last ~8 epochs · v4.2: the
                                                // FULL FIP-10 minimums set
                                                // (uptime + FSP + FTSO + FDC),
                                                // not RPC-uptime alone

score = raw * clamp(reliability, 0, 1)                 // dimension max 20
Warum: Vor v3.4 war diese Dimension praktisch tot – 92,9% der aktiven Validatoren haben 100% RPC-Verfügbarkeit, daher bewertete die Kurve alle gleich. Das Zuverlässigkeitsverhältnis ist ein echtes Zeitseriensignal: ein Validator, der in 3 von 8 kürzlichen Epochen die FIP-10-Mindestbedingungen nicht erfüllt hat, hat eine 62,5% Zuverlässigkeitsbewertung, unabhängig davon, was die momentane RPC derzeit meldet. Strenger als FIP-10's 80%-Protokoll-Boden mit Absicht. Pro-Epochen-Berechtigungsdaten werden von der Flare Foundation in ihrem Reward-Scripts-Repository veröffentlicht.
Netto-Rendite18 Punkte max
Was: Die Netto-Staking-Belohnungs- (VRM) Rate, die ein Delegator erhält, verankert am Netzwerk-Median.
Wie: scoreAPR = gemessene Netto-DELEGATIONSRATE (delegationAPY: Σ delegatorRewardAmount / Σ delegiert, aus Flare Foundation Reward-Scripts, letzte ~8 Epochen), falls verfügbar, sonst theoretisch baseAPR = Brutto × (1 − Gebühr). Score = (scoreAPR / medianAPR) verankert: Verhältnis 0,6 → 0 Punkte, 1,0 (Median) → 12 Punkte, 1,2 → 18 Punkte. WICHTIG: diese Dimension bewertet nur die VRM (Validierungs-Belohnungs-) Rate – MIRROR wird separat in der MIRROR-Partizipations-Dimension bewertet, also wird es hier nicht doppelt gezählt. Der angezeigte 'Gesamt-APR' (VRM + MIRROR) ist eine Delegator-seitige Zahl, nicht die Netto-Rendite-Eingabe.
scoreAPR = delegationAPY > 0 ? delegationAPY : baseAPR   // VRM, net of fee
medianAPR = median(scoreAPR across all validators)
cappedAPR = min(scoreAPR, 25)                  // APY_DISPLAY_CAP

if (medianAPR > 0):
  ratio = cappedAPR / medianAPR
  score = clamp(((ratio - 0.6) / 0.6) * 18, 0, 18)
else:
  score = min(18, (cappedAPR / 8) * 18)        // fallback: BASE_APY = 8
Warum: Beide Seiten des Verhältnisses sind die NETTO-Delegationsrate (gemessenes delegationAPY vs. theoretisches Brutto×(1−Gebühr)), daher ist der Vergleich ähnlich – nicht mehr aufgeblasen durch 1/(1−Gebühr) wie es der Fall war, als die Eingabe eine Vor-Gebühr-Brutto-Rate war (der ~2× 'Verdoppelungs'-Bug). Da Flare Validierungsbelohnungen proportional zum Stake zahlt, ist die VRM-Delegationsrate im Netzwerk in etwa einheitlich und variiert hauptsächlich durch Gebühr – daher reflektiert diese Dimension hauptsächlich Gebühren-Wettbewerbsfähigkeit und Lieferzuverlässigkeit (ein Validator, der Epochen verpasst, liefert weniger). MIRROR (das je nach FTSO-Partizipation variiert) wird absichtlich in seiner eigenen Dimension behalten, um Doppelzählung zu vermeiden.
Gebühren-Angemessenheit7 Punkte max
Was: Schutz vor Extraktion oberhalb der Protokoll-Gebührenuntergrenze, linear stückweise geglättet.
Wie: Anker = max(beobachtete minimale aktive Gebühr, Protokoll-Validator-Gebührenuntergrenze — 20% seit Granite Hard Fork, 2026-07-14). Jede Gebühr auf oder unter dem Anker → volle 7 Punkte. Darüber hinaus eine lineare Rampe mit zunehmend steileren Steigungen über die nächsten 20 Gebührenpunkte (Anker+5 → 6, Anker+10 → 4,5, Anker+15 → 2,5, Anker+20 → 0): kleine Übergebuihren kaum bestraft, Extraktion hart bestraft. Vor Granite war der Anker ein absoluter 5%; die Untergrenzenbegrenzung bedeutet, dass kein Betreiber jemals für die Berechnung des legalen Minimums bestraft wird.
// anchor = max(observed minimum active fee, 20% protocol floor)
d = fee - anchor                                  // distance above market best
if (d <= 0)       score = 7                       // at/below best available
else if (d <= 5)  score = 7   - d * 0.2           //  0 → 5 over: 7 → 6
else if (d <= 10) score = 6   - (d - 5)  * 0.3    //  5 → 10 over: 6 → 4.5
else if (d <= 15) score = 4.5 - (d - 10) * 0.4    // 10 → 15 over: 4.5 → 2.5
else if (d <= 20) score = 2.5 - (d - 15) * 0.5    // 15 → 20 over: 2.5 → 0
else              score = 0
// fees > anchor+20 saturate at 0/7 — the v4.5 extreme-fee
// penalty below takes over from there
Warum: Netto-Rendite berücksichtigt bereits die prozentuale Gebühr in gelieferten Begriffen; diese Dimension kennzeichnet nur Betreiber, die deutlich mehr verlangen, als das Protokoll und der Markt zulassen. Sobald jede Gebühr auf der erzwungenen 20%-Untergrenze liegt, erhält jeder hier volle Punkte und die Dimension hört auf zu unterscheiden — absichtlich: eine Zahl, die niemand unterbieten kann, kann niemanden differenzieren.
Betreiber-Qualität12 Punkte max
Was: Nimmt das Maximum von zwei unabhängigen Signalen: Verifizierungs-Baseline (Identitätsvertrauen) und FTSO-abgeleitete operationale Performance.
Wie: Verifizierungs-Baseline: kurierte Stufe (+7) erreicht auf zwei Wegen – manuell überprüfter KNOWN_VALIDATORS-Eintrag ODER Auto-Promotion via objektives Verhalten (v3.10: 90+ Tage beobachtet UND 25+ Betreiber-aggregierte Delegatoren UND nicht aktuell schrumpfend UND Eigenkapital ≥ FIP-10-Boden). Auto-erkannter Name aus Flaremetrics oder FSE → +3. Unverifiziert → 0. FTSO-abgeleitet: lineare Interpolation FTSO-Score 50 → 4 Punkte bis FTSO-Score 100 → 12 Punkte (unter 50 Bodensatz bei 4). Finaler Score ist max(Verifizierung, FTSO-abgeleitet) – FTSO-Partizipation kann nur helfen, nie schaden.
// Verification baseline (v3.10 hybrid)
isCurated = (in KNOWN_VALIDATORS) OR (
  daysObserved >= 90 AND
  operatorDelegatorCount >= 25 AND
  retention30d >= -15% AND
  selfBondFLR >= 1_000_000
)

if (isCurated)                       verification = 7
else if (name auto-discovered)      verification = 3
else                                verification = 0

// FTSO-derived (only when ftsoOperatorScore is a number)
clamped = clamp(ftsoOperatorScore, 50, 100)
ftsoDerived = 4 + (clamped - 50) * (8/50)   // FTSO 50 → 4, FTSO 100 → 12

// Final score
score = max(verification, ftsoDerived)
Warum: Belohnt Operatoren, die einen vollständigen Stack (Validator + FTSO + FDC) betreiben, ohne vertrauenswürdige Operatoren für die Teilnahme an FTSO mit mittlerem Score zu bestrafen. Die v3.8 max()-Logik verhindert explizit den perversen Anreiz, „FTSO zu beenden, um deinen FlareWatch-Score zu verbessern.
MIRROR-Teilnahme12 Punkte max
Was: Ob die nodeID des Validators tatsächlich einen FTSO-Inflationsanteil an Staker liefert — sowohl den Anteil, der Delegierer erreicht (Gebühren-Durchsatz) als auch seit v4.6 den gelieferten Betrag im Vergleich zum Feld.
Wie: Aktiv → 10 × (1 − fee/100). Pausiert → 5 × Durchsatz. Inaktiv (kein Partizipationssignal irgendwo) → 0. Keine Daten (genuiner unbeobachteter Validator) → 5 × Durchsatz. v3.6 verbreiterte das 'aktive' Signal, um sowohl On-Chain-RewardClaimed(claimType=3)-Events ALS AUCH claimType=3-Zuweisungen im kanonischen FSP-Merkle-JSON einzuschließen — beides ist ausreichend. Dies erfasst Validatoren, deren MIRROR zugewiesen, aber noch nicht on-chain beansprucht wurde (z. B. Self-Delegating-Provider, deren Abrechnungspfad das Standard-Claim-Event nicht auslöst). v4.6 Magnitudbonus (max +2, Dimensionsdecke 12): nur für Mirror-aktive Validatoren, clamp((mirrorAPY / networkMedianMirrorAPY − 1,2) × 5, 0, 2) — Gutschrift für die Lieferung einer überdurchschnittlichen MIRROR-Rate (netto Gebühr) an Delegierer. Verankert an der Netzwerk-Medianrate, daher größenneutral: ein kleiner Validator, der eine hohe Rate liefert, verdient dieselbe Gutschrift wie ein großer.
passthrough = max(0, 1 - fee / 100)

if (mirrorStatus == "active")    base = 10 * passthrough
else if (mirrorStatus == "paused")   base = 5 * passthrough
else if (mirrorStatus == "inactive") base = 0
else                                 base = 5 * passthrough  // no data yet

// v4.6 — capped, median-anchored bonus for delivered MIRROR yield.
// Only mirror-active validators paying ABOVE 1.2x the network median
// delivered rate (mirrorAPY, net of fee) earn it; size-neutral.
ratio = mirrorAPY / networkMedianMirrorAPY
bonus = clamp((ratio - 1.2) * 5, 0, 2)   // active only, else 0
score = base + bonus                     // dimension max 12
Warum: MIRROR verteilt sich automatisch an Staker auf FSP-teilnehmenden Validatoren. Ein Validator mit 100%-Gebühr, der 'aktiv' ist, liefert $0 an Delegierer; der Score spiegelt wider, was Delegierer tatsächlich erhalten, nicht nur den Protokoll-seitigen Flag-Status. Der v4.6-Magnitudbonus schließt einen blinden Fleck: Der Durchsatz allein maß den ANTEIL, der Delegierer erreicht, aber nicht den BETRAG, daher verdiente ein Validator, der eine viel höhere gelieferte MIRROR-Rate bezahlte, keinen zusätzlichen Kredit dafür. Er tut es jetzt — begrenzt und nur über dem Netzwerk-Median.
Kapazitätsprofil7 Punkte max
Was: Zelffunktion mit Höhepunkt bei optimaler Auslastung.
Wie: 0% ausgelastet → 1,75. Lineare Rampe bis 7 bei 70% Auslastung. Lineare Rampe hinunter auf 5,25 bei 100% (begrenzt). In v3.7 von 8 → 7 umgestaltet, um die neuen Trust-Trajektorienkomponenten zu finanzieren.
utilization = clamp(1 - freeSpaceFLR / maxDelegationFLR, 0, 1)

if (utilization <= 0.70):
  score = 1.75 + (utilization / 0.70) * 5.25     // 1.75 → 7 ramp
else:
  score = 7 - ((utilization - 0.70) / 0.30) * 1.75 // 7 → 5.25 ramp
Warum: Bei FIP-10-Maximaldelegationen zu sein ist ein POSITIVES Attraktivitätssignal — bewährt vertraut von genug Delegatoren, um aufgefüllt zu werden. v2 bewertete begrenzte Validatoren mit 0/5; v3 korrigiert dies. Richtig dimensioniert (bewährt attraktiv UND hat Platz) erhält den Höhepunkt. v3.7 reduzierte die Dimensionsobergrenze 8 → 7, sodass der freie Punkt Trust's neue Retentions- und Self-Bond-Trajektorienkomponenten finanzieren konnte.
Gemeinschaftsvertrauen11 Punkte max
Was: Multi-Signal: Delegator-Anzahl + Stake-Verteilungsgesundheit + Langlebigkeit + Self-Bond-Verpflichtung des Operators (proportional und absolut) + 30-Tage-Haltbarkeit + Self-Bond-Verlauf + Multi-Node-Operator-Aggregation.
Wie: Count-Signal (max 6, OPERATOR-AGGREGIERT v3.7): log-skaliert [5, 500] Delegatoren → [0, 6], summiert über alle bekannten Nodes eines Operators. Konzentrations-Anpassung (±1): Retail-freundlicher durchschnittlicher Stake (<500K FLR) → +1, Whale-konzentriert (>50M FLR Durchschnitt) → −1. Langlebigkeitsbonus (max +1, Lösch-immun v3.6): +0,5 bei 30 Tagen beobachtet, +1 bei 90+ Tagen – fällt zurück auf Reward-Scripts Epoch-Präsenz, wenn die erste beobachtete KV gelöscht wurde. Self-Bond Skin-in-the-Game (max +2 / min −1, ZWEISEITIG v4.7): bewertet nach dem BESSEREN von Anteilswert ODER absoluter Größe – proportional ≥10% → +2 / 5–10% → +1, und absolut = min(1, selfBond ÷ 20M) × 2 saturierend bei der oberen Netzwerk-Dezil-Bond; das Signal nimmt das Maximum der beiden, immer noch gedeckelt bei +2. Unter-FIP-10-Grenze (<1M FLR) → −1. Haltbarkeit (max ±0,5, NEU v3.7): delegierte FLR +10% über 30 Tage → +0,5, −15% → −0,5. Self-Bond-Verlauf (max ±0,5, NEU v3.7): Self-Bond des Operators +20% über 30 Tage → +0,5, −10% → −0,5.
// Count signal (max 6)
if (delegatorCount <= 5)        countScore = 0
else if (delegatorCount >= 500) countScore = 6
else  countScore = clamp(log(delegatorCount / 5) / log(100) * 6, 0, 6)

// Concentration adjustment (-1 to +1) — skip if <3 delegators
avgFLR = delegatedFLR / delegatorCount
if (avgFLR < 500_000)        concentrationAdj = +1
else if (avgFLR < 5_000_000)   concentrationAdj = +0.5
else if (avgFLR > 50_000_000)  concentrationAdj = -1
else if (avgFLR > 20_000_000)  concentrationAdj = -0.5
else                           concentrationAdj = 0

// Longevity bonus (0 to +1)
daysObserved = (now - firstObservedAtMs) / 86400000
if (daysObserved >= 90)      longevityBonus = +1
else if (daysObserved >= 30) longevityBonus = +0.5
else                         longevityBonus = 0

// Self-bond alignment (-1 to +2, two-axis since v4.7)
if (selfBondFLR < 1_000_000)   selfBondAdj = -1              // hollow-operator floor
else:
  ratio        = selfBondFLR / totalStake                   // totalStake = selfBond + delegated
  proportional = ratio >= 0.10 ? +2 : ratio >= 0.05 ? +1 : 0
  absolute     = min(1, selfBondFLR / 20_000_000) * 2        // saturates at top-decile bond
  selfBondAdj  = max(proportional, absolute)                 // the better of the two axes

// Retention (-0.5 to +0.5, v3.7) — skip if no 30-day baseline yet
delta = (delegatedFLR - delegatedFLR30dAgo) / delegatedFLR30dAgo
if (delta >= +0.10)      retentionAdj = +0.5
else if (delta <= -0.15) retentionAdj = -0.5
else                     retentionAdj = 0

// Self-bond trajectory (-0.5 to +0.5, v3.7) — skip if no baseline
sbDelta = (selfBondFLR - selfBondFLR30dAgo) / selfBondFLR30dAgo
if (sbDelta >= +0.20)      selfBondTrajectoryAdj = +0.5
else if (sbDelta <= -0.10) selfBondTrajectoryAdj = -0.5
else                       selfBondTrajectoryAdj = 0

score = clamp(countScore + concentrationAdj + longevityBonus + selfBondAdj
            + retentionAdj + selfBondTrajectoryAdj, 0, 11)
Warum: Skin-in-the-Game Self-Bond ist ein echtes Fairness-Signal, das uns gefehlt hat – ein Validator mit 10% des Gesamtstakes als Self-Bond hat materiel besser abgestimmte Anreize als einer, der das FIP-10-Minimum nutzt. v4.7 macht dies zweiseitig: Wenn man Self-Bond nur als Verhältnis liest, wurden Operatoren bestraft, die einen großen absoluten Stake aufgebracht und dann Delegationen angezogen haben, was das Verhältnis verwässert, ohne die echte Verpflichtung zu verringern – eine 20M Self-Bond bei verwässertem Verhältnis erhielt den gleichen Score wie eine Sub-2M-Bond bei diesem Verhältnis. Das Signal wertet jetzt das BESSERE von Anteilswert oder absoluter Größe auf, die absolute Seite saturierend bei einer Top-Netzwerk-Bond, sodass Größe nicht einfach Score kaufen kann, entsprechend wie der FTSO-Provider-Score Self-Bond bereits behandelt; die +2-Obergrenze ist unverändert, daher können große verpflichtete Operatoren sie jetzt erreichen, aber die Obergrenze hat sich nicht bewegt. Langlebigkeit belohnt bewährte Leistung, ohne Neulinge zu bestrafen (kleiner Bonus obendrauf, keine Strafe darunter). Konzentrations-Risiko ist relevant für Delegatoren – ein Validator mit 1 Whale bei 50M FLR ist strukturell anders als 50 Retail bei je 1M. Die zwei v3.7 Verlauf-Signale belohnen organisches Wachstum und wachsende Operator-Verpflichtung. Zusammengesetzte Obergrenze ist 11 (erhöht von 10 in v3.7 um diese zu finanzieren), kein Signal dominiert.
Lieferzuverlässigkeit10 Punkte max
Was: Verhältnis der tatsächlich gelieferten Netto-Delegationsrate (VRM) zur theoretischen Basislinie mit Varianzstrafe für inkonsistente Auszahlungen. Beide Seiten sind netto der Gebühr, sodass das Verhältnis echte Lieferung misst — nicht die Gebühr.
Wie: Stückweise lineare Lieferungsquote: 100%+ → 10, 95% → 8, 90% → 6, 85% → 4, 80% → 2, <80% → lineare Rampe gegen 0. Varianzstrafe: Variationskoeffizient × 0,5, begrenzt auf −30%. Konfidenzabschwächer vermischt sich zu neutral 5, wenn Stichprobengröße < 3 Epochen. v3.9 linearisierte die zuvor gebündelten Schwellwerte — Grenzklippen von bis zu 2 Punkten sind nun glatt.
// Time-weighted rate is computed upstream from per-epoch
// reward-scripts data with decay = 0.85 per epoch back.
r = deliveryRatio   // capped at 1.0

if (r >= 1.00)      base = 10
else if (r >= 0.97) base = 9  + (r - 0.97) * (1 / 0.03)   // 0.97 → 9, 1.00 → 10
else if (r >= 0.95) base = 8  + (r - 0.95) * (1 / 0.02)   // 0.95 → 8, 0.97 → 9
else if (r >= 0.90) base = 6  + (r - 0.90) * (2 / 0.05)   // 0.90 → 6, 0.95 → 8
else if (r >= 0.85) base = 4  + (r - 0.85) * (2 / 0.05)   // 0.85 → 4, 0.90 → 6
else if (r >= 0.80) base = 2  + (r - 0.80) * (2 / 0.05)   // 0.80 → 2, 0.85 → 4
else                base = max(0, r * 2.5)                 // 0 → 0, 0.80 → 2

// Variance penalty (CoV = std-dev / mean across per-epoch rates)
variancePenalty = min(0.30, coefficientOfVariation * 0.5)
score = base * (1 - variancePenalty)

// Sample-size confidence dampener for < 3 epochs
if (totalStakesCompleted < 3):
  confidence = totalStakesCompleted / 3
  score = 5 + (score - 5) * confidence
Warum: Versprochen vs. geliefert ist das direkteste Verantwortlichkeitssignal für Staker. v3.3 fügte zwei Verfeinerungen hinzu: (1) das Schlagzeilen-Verhältnis verwendet einen exponentiell zeitgewichteten Durchschnitt (neuere Epochen zählen mehr), sodass ein Validator, der früher gut lieferte, aber kürzlich abschwächte, richtig bestraft wird; (2) die Varianzstrafe unterscheidet konsistente 95%-Lieferer von um-95%-oszillierenden Lieferern, da letztere mehr Risiko für Staker tragen, die vorhersagbare Renditen schätzen.
Verbleibende Zeit5 Punkte max
Was: Tage bis zum Stake-Ende des Validators auf der P-Chain.
Wie: < 14 Tage → 0 (im Wesentlichen unter FIP-10 nicht verfügbar). 14–30 Tage → linear 0→2. 30–60 Tage → linear 2→3. 60–120 Tage → linear 3→5. 120+ Tage → 5. v3.9 linearisierte die zuvor gebündelten Schwellwerte — Grenzklippen (z. B. 13,99 Tage → 0, 14 Tage → 2) sind nun glatt.
daysLeft = (endTimeMs - now) / 86_400_000

if (daysLeft < 14)       score = 0
else if (daysLeft < 30)  score = 0 + (daysLeft - 14) * (2 / 16)    // 14 → 0, 30 → 2
else if (daysLeft < 60)  score = 2 + (daysLeft - 30) * (1 / 30)    // 30 → 2, 60 → 3
else if (daysLeft < 120) score = 3 + (daysLeft - 60) * (2 / 60)    // 60 → 3, 120 → 5
else                     score = 5
Warum: Praktisches Signal — an einen Validator mit 7 Tagen Restlaufzeit zu delegieren ist ein anderer Fall als 1 Jahr. v3.2 verschärfte den unteren Bereich: Validatoren innerhalb von 14 Tagen bis zum Stake-Ende können keine neuen Delegationen akzeptieren (FIP-10-Mindestlaufzeit ist 14 Tage), sodass sie faktisch absteckbar sind. Score = 0 unterscheidet „im Moment absteckbar
Aktive Ausfallstrafe (v4.3)(Abzug) Punkte max
Was: Pauschalabzug, der auf die positiven Dimensionen aufgeschichtet wird, wenn ein Validator mehrere Belohnungs-Epochen hintereinander verfehlt. Unterschieden vom symmetrischen Uptime-Zuverlässigkeitsmultiplikator — erfasst aktive Ausfälle, nicht chronische Instabilität.
Wie: Schauen Sie sich das kontinuierliche !eligible-Präfix des Validators in dem cache:fsp-validator-participation-Datensatz an (neueste Epoch-Liste zuerst aus den öffentlichen reward-scripts nodes-data.json). 0–1 konsekutive Fehlschläge → 0 Pkt (innerhalb Varianz / einzelner vorübergehender Fehler). 2 konsekutive → −3 Pkte (sich entwickelnder Ausfall). 3 konsekutive → −6 Pkte (aufrecht — Operator-Nachlässigkeit). 4+ konsekutive → −10 Pkte (aktiver erweiterter Ausfall). Gesamtscore wird nach dem Abzug auf 0 begrenzt.
consecutiveMisses = 0
for entry in participation.recent (newest-first):
  if entry.eligible: break
  consecutiveMisses++

if consecutiveMisses < 2:  penalty = 0
elif consecutiveMisses == 2: penalty = 3
elif consecutiveMisses == 3: penalty = 6
else:                        penalty = 10                  // 4+

score = max(0, positiveDimensionsSum - penalty)
Warum: Das Pre-v4.3-Modell verließ sich vollständig auf den symmetrischen uptimeReliability-Multiplikator — 5 verstreute Fehlschläge über 24 Epochen kosteten das Gleiche wie 5 Fehlschläge in einer Reihe. Betrieblich sind das sehr unterschiedliche Signale. Verstreute Fehlschläge erzählen Delegatoren von chronischer Instabilität; eine Serie sagt ihnen, der Validator ist JETZT kaputt. Der Luganodes-Vorfall am 14.05.2026 — mehrere aufeinanderfolgende verpasste Epochen, während Delegatoren aktiv Millionen von FLR begangen — war der spezifische Fall, den die v4.3-Veröffentlichung adressiert: das aktive-Ausfallsignal mit schärferer Score-Auswirkung an die Oberfläche bringen, sodass Delegatoren einen In-Flight-Fehler vermeiden können, bevor sie sich begeben. Die abgestufte Kurve vermeidet Überreaktion auf einzelne vorübergehende Fehlschläge (häufig), während sie aufrecht verharrt, Streaks (selten und folgenreich) scharf kennzeichnet.
Extreme-Gebühr-Penalty (v4.5)(bis zu −75% des Scores) Punkte max
Was: Proportionale Abzug für Gebühren außerhalb des Bereichs der Gebührendimension. Die Gebührendimension erreicht 0/7, sobald eine Gebühr den Anker um 20 Punkte übersteigt – danach reagierte die Zusammensetzung überhaupt nicht mehr auf Gebühren, sodass ein Validator mit 100%-Gebühr (seine Delegatoren erhalten nichts) trotzdem in den 40ern bei gebührenunabhängigen Dimensionen wie Verfügbarkeit und MIRROR punkten konnte.
Wie: Null bei oder unter 50% Gebühr – die Gebührendimension erfasst bereits diesen Bereich, sodass keine Doppelzählung vorliegt. Über 50% steigt der Abzug linear mit der Gebühr an und erreicht 75% des positiven Scores des Validators bei einer 100%-Gebühr. Es skaliert mit dem Score selbst, sodass ein gepflegter privater Node und ein vernachlässigter jeweils dort landen, wo sie hingehören: am unteren Ende eines delegatorengerichteten Rankings.
// v4.5 — fees beyond the Fee dimension's range (anchor+20)
if fee <= 50:  penalty = 0
else:          fraction = min(1, (fee - 50) / 50) * 0.75
               penalty  = positiveDimensionsSum * fraction

// fee 50% → no change · 75% → −37.5% of score · 100% → −75%
score = max(0, positiveDimensionsSum - outagePenalty - penalty)
Warum: Dies ist ein Score für Delegatoren. Ein Validator, der jede Belohnung, die seine Delegatoren verdienen, behält, ist kein Delegationskandidaten unabhängig davon, wie gut seine Verfügbarkeit ist – der Score sollte das unmissverständlich sagen. Reine Funktion der On-Chain-Gebühr, identisch auf jeden Node angewendet, inklusive unserer.
Wie man 100/100 erreicht — ein Validator-Playbook
Der Audit-Zyklus, der v4.0 hervorbrachte, wurde speziell so ausgelegt, dass die Maximierung jeder Dimension Sie wirklich zu einem besseren Validator für Ihre Delegatoren macht. Das Verbessern Ihres Scores ist nicht Systemspiel — es ist das System, das wie entworfen funktioniert. Hier ist das explizite Playbook pro Dimension.
Uptime — 20 Pkte. Halten Sie kontinuierlich ≥99,5% RPC-Verfügbarkeit UND erfüllen Sie FIP-10-Minimalbedingungen in jeder Belohnungs-Epoch (verpassen Sie keine Reveal, treffen Sie Median-Lieferung). Die zwei Signale werden multipliziert — 100% RPC × 7/8 Epochen berechtigt = 17,5/20, nicht 20. Warum dies mit Delegatoren übereinstimmt: jede Epoch, die Sie FIP-10 verfehlen, verlieren Ihre Delegatoren ihre Belohnung für diese Epoch.
Net Yield — 18 Pts. Liefern Sie ≥1,2× Netzwerk-Median-APY an Ihre Delegatoren (nach Gebühr). Bester Weg: niedrige Gebühr + vollständige FIP-10-Berechtigung, damit Delegatoren ihren vollen Anteil erhalten. Warum dies passt: Dies ist buchstäblich der Dollarbetrag, der den Delegator nach Ihrem Anteil erreicht.
Gebührenberechnung — 7 Punkte. Seit dem Granite Hard Fork erzwingt das Protokoll eine minimale Delegationsgebühr von 20%, und jede Gebühr auf oder unter dem Scoring-Anker (das Maximum der beobachteten Marktuntergrenze und dieser Untergrenze) verdient die vollen 7 Punkte. Die Berechnung oberhalb kostet Punkte auf einer beschleunigten Rampe — Anker+10 → 4,5 Punkte, Anker+20 → 0. Warum dies ausgerichtet ist: Die Untergrenze eliminierte Gebührenwettbewerb, daher schützt diese Dimension jetzt nur noch Delegierer vor Extraktion oberhalb des legalen Minimums; Ihr echter Vorteil liegt in der gelieferten Netto-Rendite.
Operator-Qualität — 12 Pkte. Bester Weg: Registrieren Sie sich als FTSO-Datenanbieter und führen Sie einen hochqualitativen Stack (FTSO + FDC + Signier) — Ihr FlareWatch-Score für Operator-Qualität kommt dann von Ihrem FTSO-Score, mit Maximum bei FTSO 100. Alternative, wenn Sie nur Staking machen: halten Sie die +7-Verifikations-Basislinie entweder durch Qualifizierung für v3.10-Auto-Beförderung (90+ Tage beobachtet, 25+ Delegatoren, Retention nicht rückläufig, FIP-10-konform Self-Bond) oder durch Hinzufügen zu KNOWN_VALIDATORS als institutionelle Infrastruktur (manueller Schnelltrack). Der Score nimmt max(Verifikation, FTSO-abgeleitet) — Teilnahme kann nie schaden. Warum dies übereinstimmt: Vollstack-Operatoren bieten mehr Ökosystem-Wert; die Verifikations-Basislinie gibt Delegatoren klareres Identitätssignal.
MIRROR-Teilnahme — 10 Pkte. Reichen Sie FSP-Price-Feeds konsistent ein, erfüllen Sie Pro-Epoch-Protokoll-Minima (in Ihrer Signing-Richtlinie registriert, Anspruchsschwelle erreicht, keine Reveal-Fehlschläge). Berechnen Sie eine angemessene Gebühr — der Score wird mit (1 − Gebühr/100) multipliziert, sodass sogar ein vollkommen MIRROR-aktiver 100%-Gebühren-Validator 0 Score erreicht, da Null-MIRROR Delegatoren erreicht. Warum dies übereinstimmt: MIRROR ist der Anteil Ihrer Delegatoren an der FTSO-Inflation. Niedrigere Gebühr = mehr erreicht sie.
Kapazitätsprofil — 7 Pkte. Streben Sie ~70% Auslastung an (richtig dimensioniert: bewährt attraktiv UND hat Platz für neue Delegatoren). Leere Validatoren erhalten 1,75; begrenzte Validatoren erhalten 5,25. Warum dies übereinstimmt: neue Delegatoren, die den Score lesen, möchten wissen, dass sie tatsächlich delegieren können; richtig dimensioniert signalisiert sowohl sozialen Beweis als auch Verfügbarkeit.
Gemeinschaftsvertrauen — 11 Pkte. Sechs Komponenten zum Maximieren:
  • Bauen Sie bis zu 500+ operator-aggregierte Delegatoren auf (max Count-Signal: +6 Pkte).
  • Halten Sie einzelhandelsfreundlichen Durchschn. Einsatz < 500K FLR pro Delegator (Konzentrationsbonus: +1).
  • Bleiben Sie ≥ 90 Tage im Netzwerk für den Langlebigkeitsbonus (+1) — wipe-immun via reward-scripts Präsenz.
  • Halten Sie eine große Self-Bond – entweder ≥ 10% proportional ODER einen absoluten Stake an der Spitze des Netzwerks (~20M FLR), je nachdem, was besser bewertet wird (Alignment-Bonus: +2).
  • Wachsen Sie die gesamte delegierte FLR um ≥ 10% über 30 Tage (Retention: +0,5).
  • Erhöhen Sie die Self-Bond um ≥ 20 % über 30 Tage (Trajektorie: +0,5).
Warum das passt: Jede Komponente belohnt ein Verhalten, das Delegatoren wünschen — Operator-Eigenkapital, organisches Wachstum, Langlebigkeit, breite Gemeinschaftsbeteiligung. Multi-Node-Operatoren werden für Count- und Konzentrationssignale aggregiert (v3.7).
Delivery Reliability — 10 Punkte. Zahlen Sie Delegatoren das, was Ihre geschätzte APY verspricht (Delivery-Verhältnis 1,00). Minimieren Sie die Varianz pro Epoch — vorhersehbare Auszahlungen schlagen denselben Durchschnitt mit hoher Streuung (Varianzpenalty bis −30 %). Erstellen Sie einen Stichprobenumfang von 8+ Epochs für vollständiges Konfidenzgewichtung. Warum das passt: Liefern Sie das, was Sie versprochen haben, konsequent? Das ist das direkteste Rechenschaftssignal, das es gibt.
Time Remaining — 5 Punkte. Halten Sie Ihr Stake-End-Datum ≥ 120 Tage entfernt. Erneuern Sie gut vor Ablauf; lassen Sie es nicht in die < 14-Tage-Spanne gleiten (Sie können unter FIP-10 keine neuen Delegationen annehmen, sobald Sie innerhalb von 14 Tagen sind). Warum das passt: Eine längere Verpflichtung signalisiert Delegatoren, dass Sie für die lange Strecke hier sind.
Time-gated Signale, die Sie nicht überspringen können: Longevity-Bonus (90 Tage beobachtet), Auto-Kurations-Tier (90 Tage + 25 Delegatoren + nicht rückläufige Aufbewahrung + FIP-10 Self-Bond), Aufbewahrungssignal (30 Tage Delegationshistorie), Delivery-Stichprobenumfang (8 Reward-Epochs). Die gute Nachricht: Das Aufrechterhalten der ANDEREN Verhaltensweisen führt automatisch zu diesen über die Zeit.
Smoothing-Fenster ist kurzfristig wichtig: Die angezeigte Punktzahl ist ein exponentiell gewichteter Durchschnitt der letzten 4 Cron-Snapshots (0,5 / 0,3 / 0,15 / 0,05), daher dauert es auch eine perfekte 100 bei Eingaben ~20 Minuten aufeinanderfolgender perfekter Cron-Läufe, um sich vollständig zu zeigen. Steady-State perfekte Eingaben = 100; vorübergehende Verbesserungen werden geglättet. Plötzliche Änderungspenalties (Gebührensprünge, Self-Bond-Rückgang, Uptime-Abstürze) können auch bis zu 10 Punkte für einige Cron-Zyklen nach Erkennung abziehen.
Kurz gesagt: Jede Dimension ist ehrlich darüber, was sie misst. Wenn Ihr Validator bei 100/100 liegt, sagt die Punktzahl Ihren Delegatoren auch, dass sie die beste Version eines Validators im Netzwerk bekommen — das ist die Designabsicht.
So überprüfen Sie Ihre Punktzahl selbst
Jede Punktzahl in der Validator-Tabelle ist reproduzierbar aus öffentlichen Daten. Wenn Sie ein Operator sind und die Mathematik hier nicht mit der Punktzahl übereinstimmt, die Sie sehen, ist der richtige Schritt, sie selbst zu überprüfen, bevor Sie annehmen, dass wir einen Fehler gemacht haben.
Die schnellste Überprüfung läuft automatisch. Erweitern Sie die Punktzahl-Reihe eines beliebigen Validators und das Panel „In Ihrem Browser überprüft
  1. Suchen Sie die öffentlichen Statistiken Ihres Validators auf unter flaremetrics.io (Suche nach Ihrem Operatornamen oder fügen Sie Ihre Delegationsadresse ein). Notieren Sie sich Ihre delegationFee, selfBond, delegatedStake und FTSO-Punktzahl (falls Sie auch ein Datenanbieter sind).
  2. Überprüfen Sie Ihre FIP-10-Berechtigung für jede der letzten 8 Reward-Epochs unter github.com/flare-foundation/reward-scripts unter generated-files/reward-epoch-N/nodes-data.json. Zählen Sie, wie viele Epochs Ihre nodeID uptimeEligible: true hatte. Dieses Verhältnis bestimmt Ihren Uptime-Dimensionsmultiplikator.
  3. Überprüfen Sie Ihre MIRROR-Beteiligung auf dem V2-RewardManager-Vertrag über flare-explorer.flare.network. Suchen Sie nach RewardClaimed-Ereignissen mit claimType=3, die Ihre nodeID referenzieren. Wenn es kürzlich keine gibt, zeigen Sie sich als MIRROR-inaktiv.
  4. Geben Sie Ihre Eingaben in die obigen Formeln ein. Der Code-Block jeder Dimension zeigt Ihnen genau, welche Arithmetik Sie ausführen müssen. Summieren Sie die Dimensionen, begrenzen Sie auf 100, und Sie haben Ihre von Cron berechnete Rohergebnis-Punktzahl.
  5. Vergleichen Sie mit Ihrer angezeigten Punktzahl. Die angezeigte Punktzahl enthält v3.5s exponentiell gewichteten Durchschnitt der letzten 4 Cron-Snapshots (aktuell gewichtet 0,5, vorher 0,3 usw.) — daher unterscheidet sich eine einzelne Laufberechnete Punktzahl leicht von der angezeigten. Das Punktzahl-Breakdown-Panel auf jeder Validator-Reihe zeigt die persistierten Dimensionswerte, die beigetragen haben.
  6. Wenn die Mathematik nicht aufgeht, senden Sie eine E-Mail an [email protected] mit Ihrer nodeID, den Eingaben, die Sie verwendet haben, und der Punktzahl, die Sie berechnet haben. Wir werden antworten, und wenn wir einen Fehler gemacht haben, werden wir ihn öffentlich korrigieren.
Programmgesteuerte Aktualisierungen: Für jeden aktiven Validator GET /api/validators/{nodeID}/score-breakdown treffen, um die persistierte Breakdown abzurufen — jeder Dimensionswert, die Algorithmesversion, die ihn erzeugt hat, und die neuere Punktzahlhistorie — als JSON. Das Punktzahl-Breakdown-Panel in der Benutzeroberfläche liest aus derselben Quelle.
Häufige Bedenken von Operatoren
Ich habe 100 % RPC-Verfügbarkeit — warum ist meine Uptime-Punktzahl unter 20/20?
Die Uptime-Dimension multipliziert die RPC-Kurven-Ausgabe mit Ihrem Epochen-Berechtigungsverhältnis (epochsIncluded / epochsObserved über die letzten 8 Reward-Epochen — der vollständige FIP-10-Minimumssatz seit v4.2, nicht nur RPC-Uptime). Falls Sie in einer dieser Epochen die FIP-10-Minimumbedingungen nicht erfüllt haben — auch nur kurzzeitig — fällt Ihr Zuverlässigkeitsverhältnis unter 1,0 und Ihr Uptime-Score skaliert proportional. Vor v3.4 vergab die Dimension 20 Punkte an jeden Validator mit 100% RPC-Uptime, unabhängig von der historischen Berechtigung. Jetzt unterscheidet sie.
Ich liefere MIRROR — warum zeigt FlareWatch mich als MIRROR-inaktiv?
Ab v3.6 wird die MIRROR-Beteiligung aus ZWEI kanonischen Quellen erkannt: On-Chain RewardClaimed(claimType=3)-Ereignisse auf dem V2-RewardManager UND claimType=3-Zuordnungen in der offiziellen FSP-Merkle-JSON (die veröffentlichten Belohnungsverteilungsdaten). Eine nodeID, die in einer Quelle angezeigt wird, zählt als aktiv. Pre-v3.6 haben wir den On-Chain-Stream als einziges Signal verwendet, das falsch-negative Ergebnisse für selbst delegierende Provider produzierte, deren MIRROR durch einen nicht standardmäßigen Anspruchspfad abgewickelt wurde. Auch in v3.6 behoben: Ein Schlüsselformat-Bug, bei dem ~95 Validatoren ihre Mirror-Statistik-Einträge unter hex20 (bytes20-Form der nodeID) vom On-Chain-Indexer geschrieben bekamen, wenn sie noch nicht in unserer kuratierten Namensliste waren — während jede UI-Suche nach cb58-NodeID schlüsselte. Diese Einträge existierten und waren korrekt; Sie waren nur nicht für die Anzeigeschicht sichtbar. Die Suche normalisiert jetzt beide Formate über jeden Consumer (Validators-Tabelle, Score-Breakdown-Panel, öffentliche Mirror-Statistik-API, Yield-Seite Staking-Positionen-Karte, FTSO-Anbieter-Panel). Wenn Ihre nodeID nach dem v3.6-Sweep immer noch inaktiv angezeigt wird, mögliche Ursachen: (a) Ihre nodeID ist nicht tatsächlich in Ihrer FSP-Signierungsrichtlinie für diese Epoch registriert, (b) Wir sind zwischen Epoch-Veröffentlichungen (Merkle-Daten werden pro Epoch aktualisiert, ~3,5 Tage). Senden Sie uns eine E-Mail mit Ihrer nodeID und wir werden beide kanonischen Quellen überprüfen.
Meine Punktzahl ist über Nacht um 10 Punkte gefallen — was hat sich geändert?
Eines von drei Dingen: (1) v3.5-Erkennung plötzlicher Änderungen markierte einen Gebührensprung, Self-Bond-Rückgang oder Uptime-Absturz auf Ihrer nodeID — ein 10-Punkte-Penalty gilt für die Ausführung, die wir detektieren, und verringert sich über die nächsten 3 Läufe, während sich der neue Zustand stabilisiert; (2) das Smoothing-Fenster integriert einen älteren Snapshot, der Ihren Durchschnitt herunterziehen könnte; (3) Wir haben eine Algoritmusversionbumps versandt (sichtbar in Ihrem Record-AlgorithmVersion-Feld — siehe die Versionen-Karte unten). Das Punktzahl-Breakdown-Panel zeigt aktuelle Dimensionswerte; Vergleichen Sie mit Ihren vorherigen Läufen.
Warum schneidet ein Validator mit hoher Gebühr niedriger ab als einer mit niedriger Gebühr und ähnlich allem anderen?
Net Yield-Dimension (max 18 Pts) ist gebührensensitiv — ein 0%-Gebühren-Validator liefert ~1,25× die Netzwerk-Median-APY, Scoring nahe Maximum; ein 20%-Gebühren-Validator liefert ~80% des Median, Scoring niedriger. Plus Fee Reasonableness (7 Pts) ist stückweise linear seit v3.9 (keine Buckets): ≤5% erhält die vollen 7, dann ramps die Kurve mit steigeren Steigungen ab — 10% → 6, 15% → 4.5, 20% → 2.5, 25%+ → 0 (so z.B. eine 16%-Gebühr scores ~4.1, nicht ein flacher Bucket-Wert). Also übersetzt sich eine 5-Punkte-Gebührendifferenz in ~5-8 Punkte Unterschied. Das ist beabsichtigt — Delegatoren interessiert die Gebühr direkt.
Ich bin ein brandneuer Validator ohne FTSO-Punktzahl. Warum ist meine Operator-Qualität nur 7/12?
Operator Quality (max. 12 Punkte) belohnt Vollstack-Operatoren — Validatoren, die auch einen Top-FTSO-Datenanbieter-Stack ausführen (FTSO + FDC + Signing). Wenn Sie nur Staking sind, ist die +7-Basislinie auf zwei Wegen erreichbar: (1) manuelle Aufnahme in unsere KNOWN_VALIDATORS-Liste — institutionelle Schnellspur für vertrauenswürdige Infrastruktur-Operatoren (Ankr, InfStones, Kiln usw.); (2) v3.10 Auto-Promotion basierend auf objektivem Verhalten — 90+ Tage beobachtet UND 25+ Operatoren-aggregierte Delegatoren UND Aufbewahrung nicht rückläufig UND FIP-10-konform Self-Bond. Auto-Promotion ist vollautomatisch, keine E-Mail erforderlich. Wenn Sie die Auto-Kriterien noch nicht erfüllen, starten Sie mit +3 (Auto-entdeckte Tier, erfordert ein Flaremetrics- oder FSE-Entity-Profil) und wachsen in +7, wenn sich Ihr Track Record aufbaut. Zu beschleunigen: Registrieren Sie sich als FTSO-Datenanbieter und führen Sie die V2-Protokolle aus — Ihre Punktzahl stammt dann aus der FTSO-abgeleiteten Verzweigung mit maximal 12 bei FTSO 100. v3.8: FTSO-Beteiligung kann nur helfen, niemals schaden — wenn Ihre FTSO-Punktzahl unter der Verifizierungs-Baseline liegt, behalten Sie die Baseline.
Ich habe ein Logo, aber mein Name wird als abgeschnittene NodeID angezeigt. Warum?
Ihre Operatorentität existiert in Flaremetrics (deshalb haben wir ein Logo für Sie), aber Ihr Anbieter-Profil hat kein Feld 'name' gesetzt. Wir erfinden keine Namen. Setzen Sie Ihr Profil.name auf Flaremetrics oder in der Flare Systems Explorer Entity-Registrierung, und wir werden es beim nächsten Cron-Lauf abholen. Alternativ können Sie uns einen verifizierbaren Anspruch per E-Mail senden (z.B. eine signierte Nachricht von Ihrer Delegationsadresse) und wir werden Sie von Hand zu KNOWN_VALIDATORS hinzufügen.
Mein Validator befindet sich auf FIP-10-Maximaldelegationen. Warum score Capacity nicht 7/7?
Capacity ist eine Zeltfunktion mit Spitzenwert bei 70% Auslastung (7 Punkte), abnehmend auf 5,25 Punkte bei 100%. Der Spitzenwert ist nicht 100% — am Limit bedeutet, dass Delegatoren auch wenn sie wollen, keine weiteren Gewinne hinzufügen können, was ein neutrales bis leicht negatives Signal für neue Delegatoren ist, die die Tabelle lesen. Pre-v3 haben wir 0/5 (Penality für Erfolg) gewertet; v3 korrigierte dies auf einen neutralen At-Cap-Wert, und v3.7 reskalierte die ganze Dimension von 8 → 7 max (einen Punkt für die Trust-Trajektoriensignale freigegeben), daher scores heute capped 5,25/7. Richtig dimensionierte Validatoren (bewährte Anziehung UND mit Raum zum Wachsen, Spitzenwert bei 70% genutzt) erhalten die vollen 7.
Ich bin ein echter Operator, aber ich bin überhaupt nicht in der Validator-Liste. Was gibt es?
Die Validator-Liste wird aus dem Live P-Chain RPC's getCurrentValidators-Ergebnis erstellt. Wenn Sie nicht dort sind, sind Sie entweder nicht aktiv auf P-Chain, Ihr Stake ist gerade abgelaufen, oder es gibt ein P-Chain RPC-Problem auf unserer Seite. Der Cron läuft alle 5 Minuten — Sie sollten innerhalb von 1–2 Zyklen nach der Aktivierung Ihres Stake erscheinen. Wenn Sie seit einer Stunde aktiv sind und Sie sich immer noch nicht selbst sehen, senden Sie uns eine E-Mail mit Ihrer nodeID.
Kann ich gegen meine Punktzahl einsprehen oder um manuelle Überprüfung anfordern?
Ja. Senden Sie eine E-Mail an [email protected] mit Ihrer nodeID und einer spezifischen Sorge. Wir antworten jedem Operator. Dinge, die wir handeln werden: KNOWN_VALIDATORS-Ergänzungen, MIRROR-Klassifikationskorrektionen, Logo- /Namenskorrektionen, Dimensions-spezifische Mathematikfehler. Dinge, die wir nicht handeln: Anfragen zum manuellen Erhöhen einer Punktzahl außerhalb des Algorithmus, Anfragen zum Ausschluss oder Herabstufung eines Konkurrenten.
Was wir tun und nicht tun werden
Um Mehrdeutigkeit über die Funktionsweise der Punktzahl zu beseitigen, hier sind explizite Verpflichtungen. Wenn wir jemals eine davon verletzen, dokumentieren Sie sie und senden Sie eine E-Mail an [email protected] — wir werden sie öffentlich korrigieren.
✓
Wir werden keine Zahlung annehmen für höhere Punktzahlen, gesponserte Platzierung oder bevorzugte Behandlung jeglicher Art. Die Punktzahl wird deterministisch aus öffentlichen Chain-Daten berechnet.
✓
Wir werden keine per-Validator-Bumps per Hand kodieren. Es gibt nirgendwo im Code eine „X bekommt +5, weil wir sie mögen
✓
Wir werden Validatoren nicht ausschließen aus der Tabelle aus nicht-öffentlichen Gründen. Die Liste wird von der Live P-Chain RPC bezogen und unsere Anzeige umfasst jeden aktiven Validator. Kuratierte Ergänzungen zu KNOWN_VALIDATORS füllen nur Anzeigenamen aus — sie geben keine Sichtbarkeit vor.
✓
Wir werden Algorithmusänderungen veröffentlichen. Jeder Versions-Bump (v3 → v3.1 → v3.2 → ...) ist auf der Seite in der Versions-Karte dokumentiert mit der Begründung und was sich geändert hat. Größere Änderungen erhalten einen zusätzlichen Changelog-Eintrag, der auf der Changelog-Seite der App sichtbar ist.
✓
Wir werden auf E-Mails von Operatoren antworten. Jeder Operator, der [email protected] mit einer substanziellen Besorgnis über seinen Score anschreibt, erhält eine echte Antwort innerhalb von wenigen Geschäftstagen.
✓
Wir werden unsere Fehler öffentlich korrigieren. Wenn wir einen Bug im Algorithmus, einen Fehler in der Datenquelle oder eine Lücke in der Methodik entdecken, geben wir einen Fix aus und dokumentieren ihn. Wir re-ranken nicht stillschweigend.
✗
Wir werden nicht die Inhalte von E-Mails öffentlich teilen ohne die Erlaubnis des Absenders, oder E-Mails von Operatoren für etwas anderes als die Score-Konversation verwenden, die sie hervorgebracht hat.
✗
Wir werden nicht unsere zukünftigen Pläne für eine Algorithmusänderung im Voraus mit ausgewählten Operatoren teilen — jede Version geht gleichzeitig für alle live.
Einschränkungen — was dieses Score ist und was nicht
Ein Composite Score ist eine nützliche Zusammenfassung, keine objektive Wahrheit. Unserer ist transparent, versioniert, wird identisch auf jeden Validator angewendet — auch auf unsere eigenen — und ist direkt in Ihrem Browser aus veröffentlichten Eingaben ableitbar. Er kodiert jedoch noch immer redaktionelle Urteile, und wir ziehen es vor, Ihnen exakt zu zeigen, wo diese liegen, anstatt eine Präzision zu implizieren, die die Methode nicht hat.
Die Dimension-Gewichte sind unsere Beurteilung. Uptime ist 20 Punkte wert und Gebühren 7 Punkte, weil wir entschieden haben, dass Zuverlässigkeit für die meisten Delegatoren wichtiger ist als ein paar Punkte Gebühren — nicht weil eine Formel das bewiesen hat. Vernünftige Menschen würden diese unterschiedlich gewichten. Die Gewichte sind festgelegt und öffentlich, so dass Sie genau sehen können, was wir gewählt haben, und sie mental aus der Aufschlüsselung neu gewichten können.
Net Yield ist ein Ergebnis, keine Tugend. Es misst, was ein Delegator tatsächlich verdient, verankert am Netzwerkmedian — somit wird es teilweise durch Dinge außerhalb der Kontrolle eines Operators geprägt (Netzwerk-Inflation, wie viel Delegation sie angezogen haben) und bewegt sich, wenn sich der Rest des Feldes bewegt. Ein gewissenhafter Operator mit fairer, aber höherer Gebühr kann hier niedriger abschneiden und trotzdem hervorragend sein. Lesen Sie es als "Was würde ich verdienen", nicht "Wie gut ist dieser Operator".
FTSO-bezogene Dimensionen bevorzugen Full-Stack-Operatoren. MIRROR Participation und Teil der Operator Quality belohnen Validatoren, die auch einen Top-FTSO-Data-Provider-Stack betreiben. Das ist Absicht — als Delegator verdienen Sie wirklich mehr, über MIRROR, von einem FTSO-aktiven Validator — aber es bedeutet, dass ein reiner, exzellenter Staking-only-Validator die absolute Spitze dieser Rangliste nicht erreichen kann. Wenn Sie aus Überzeugung nur Staking betreiben, gewichten Sie diese Dimensionen selbst nach unten.
Das Modell ist additiv. Dimensionen addieren sich auf, so dass eine Stärke eine Schwäche ausgleichen kann — exzellente Uptime kann eine höhere Gebühr zu einem respektablen Score tragen. Wirklich disqualifizierende Fehler (Nichterfüllung von FIP-10-Minimums, räuberische Gebühren) sind separat gesichert, so dass sie nicht vollständig verschleiert werden können — ein Validator, der jeden Epoch Minimums verfehlt oder eine 100%-Gebühr erhebt, landet unabhängig von seinen anderen Dimensionen nahe am unteren Ende — aber das Kernmodell ist eine gewichtete Summe, kein Veto-System.
Eine Zahl verbirgt neun Urteile. Die einzelne 0-100-Ziffer ist ein Ausgangspunkt, kein Urteil. Zwei Validatoren mit einem Punkt Abstand sind nicht bedeutsam verschieden. Öffnen Sie die Aufschlüsselung und gewichten Sie die Dimensionen, die für Sie wichtig sind — die Zahl existiert, um diesen Vergleich schneller zu machen, nicht um ihn zu ersetzen.
Wir ändern die Methode selten und öffentlich. Jede Änderung wird mit einer Versionsnummer, einer schriftlichen Begründung und einem feldweiten Vorher-Nachher ausgerollt, so dass Sie überprüfen können, was sich geändert hat und warum. Wenn unsere eigene automatisierte Prüfung einen Fehler in unseren Zahlen findet — was vorkommt — beheben wir ihn und sagen es.
Endscore (wie sich Dimensionen kombinieren)
Alle 9 Dimensionen addieren sich direkt, dann wird der v4.3 Abzug für aktive Ausfallstreifen subtrahiert. Die Gesamtsumme wird auf 100 begrenzt und auf 0 limitiert. Glättung über aktuelle Cron-Snapshots (v3.5) und alle plötzlichen Änderungsstrafen werden dann auf die Endzahl angewendet.
// Step 1 — Raw composite (sum of dimensions, minus the two penalties)
positive = uptime + netYield + fee + operatorQuality
         + mirror + capacity + trust + delivery + timeRemaining

// Penalties (see the two penalty cards above):
// v4.3 active-outage streak — 0-1 missed epochs → 0, 2 → 3, 3 → 6, 4+ → 10
// v4.5 extreme fee (>50%)   — positive × min(1, (fee - 50) / 50) × 0.75
raw = clamp(positive - streakPenalty - extremeFeePenalty, 0, 100)

// Step 2 — Smooth across recent cron snapshots (v3.5)
// Weights: current 0.5, prev1 0.3, prev2 0.15, prev3 0.05
smoothed = 0.5*raw + 0.3*prev1 + 0.15*prev2 + 0.05*prev3

// Step 3 — Apply sudden-change penalty if flagged this run
// Triggers: fee +50% or +5pt jump, self-bond -20% drop, uptime -5% crash
// Magnitude: -10 pts on detection, decays -7, -4, -1 over 3 runs
suddenPenalty = -10 if any flag triggered else (decaying remainder)

// Step 4 — Final score
score = clamp(smoothed + suddenPenalty, 0, 100)
Datenquellen (jede Eingabe ist öffentlich)
Flare P-Chain RPC: Validatorenliste, Uptime, Self-Bond, delegierter Stake, Gebühr, Endzeit, Delegiertenanzahl.
V2 RewardManager (claimType=3 Events): On-Chain beanspruchte MIRROR-Verteilung pro Validator-NodeID. Streng nach Typ 3 gefiltert — keine Vermischung mit VRM, FTSO-Delegation oder DIRECT-Rewards.
FSP Merkle JSON (claimType=3 Allocations): Kanonischer veröffentlichter Datensatz darüber, wem MIRROR pro Epoch geschuldet wird (die gleichen Daten, die Flares eigenes Signier-Tool liest). In v3.6 hinzugefügt als zweite maßgebliche Quelle — erfasst Validatoren, deren MIRROR zugeteilt ist, aber noch nicht on-Chain beansprucht.
Flare Systems Explorer (FSE): Validator-Entity-Registrierung, Anzeigenamen, Logos, FTSO V2 Protokoll-Partizipationsflags.
Flaremetrics-Anbieter-Daten: FTSO-Score, Belohnungsrate, Genauigkeit, V2-Funktionen, Entity-zu-NodeID-Verknüpfung.
Flare Reward-Scripts (GitHub): Pro-Validator berechnete APY für die letzten N Belohnungs-Epochen. Treibt die Delivery-Dimension.
FlareWatch-Kuration: KNOWN_VALIDATORS-Karte (~110 Einträge). Namen + Operator Quality Baseline für vertraute Infrastruktur-Operatoren.
Was ist NICHT im Score
• Selbstbewerbung oder bezahlte Platzierung. Kein Operator kann für einen höheren Score bezahlen oder Sponsoring erhalten.
• Hand-codierte validator-spezifische Boosts. Nirgendwo im Code sind Zeilen wie "X erhält +5, weil wir sie mögen". Der gleiche Algorithmus wird auf jeden Validator angewendet, einschließlich des eigenen FlareWatch-Knotens, der durch diese exakte Funktion bewertet wird.
• Subjektive Infrastruktur-Qualität. Wir versuchen nicht, Uptime-SLAs, geografische Verteilung oder Hardware-Spezifikationen zu bewerten. Wenn Sie eine Infrastruktur-Klasse beanspruchen möchten, betreiben Sie einen Top-FTSO + FDC Stack und die Operator Quality-Dimension wird es widerspiegeln.
• Locks oder Verpflichtungen gegenüber FlareWatch. Keine günstigen Scores für Staker, die FlareWatch gegenüber einem anderen Tool verwenden.
Operator-Feedback
Stimmt etwas beim Score deines Validators nicht? Schreibe eine E-Mail an [email protected] mit deiner NodeID und deiner Besorgnis. Wir antworten jedem Operator. Häufige Anfragen, auf die wir reagieren:
  • Hinzufügen deines Operators zu KNOWN_VALIDATORS (mit Verifizierung).
  • Überprüfung deiner MIRROR-inaktiven Klassifizierung, wenn du glaubst, dass sie fehlerhaft ist.
  • Logo- / Anzeigenamen-Korrektionen.
  • Allgemeine Algorithmus-Kritik.
Quellen & Referenzen
Jede Eingabe zum Score kommt von öffentlichen, verifizierbaren Flare-Ökosystem-Quellen. Jeder kann unsere Aussagen gegen diese Primärquellen überprüfen und die Mathematik aus Rohdaten nachrechnen. Wenn du eine Diskrepanz zwischen dieser Seite und dem, was die vorgelagerten Quellen sagen, entdeckst, schreibe eine E-Mail an [email protected] und wir werden es beheben.
Autoritäre Protokoll-Dokumentation. Umfasst FTSO V2, FSP, P-Chain-Validierung, FAssets und den Rest des Flare-Stacks.
Flare Governance Portal (FIPs) ↗https://proposals.flare.network
Flare Improvement Proposals — die maßgebliche Quelle für FIP-05 (Delegierungsfaktor), FIP-10 (Validator-Mindestbedingungen: 1M FLR Self-Bond Floor, 80% Uptime Floor, 14-Tage Mindestlock) und alle anderen auf dieser Seite zitierten Regeln.
Flare Systems Explorer (FSE) ↗https://flare-systems-explorer.flare.network
Offizielles Flare-betriebenes Register von FTSO-Datenanbieter-Daten, Entity-Adressen, P-Chain-NodeID-Verknüpfungen und FIP-10-Mindestbedingungsflags. Primärquelle für unsere Operator Quality und Zuverlässigkeitsdaten.
Flaremetrics ↗https://flaremetrics.io
Unabhängiger Flare-Ökosystem-Metriken-Anbieter. Quelle von FTSO-Anbieter-Scoring, Belohnungsraten, Genauigkeitsmetriken, V2-Protokoll-Partizipationsflags und Validator-zu-Entity-Adressen-Zuordnungen. Wir nutzen ihre öffentliche REST-API.
Flare Foundation reward-scripts Repository ↗https://github.com/flare-foundation/reward-scripts
Per-Reward-Epoch JSON veröffentlicht von der Flare Foundation zeigt Pro-Validator-Berechtigung, Uptime-Berechtigung und gelieferte Belohnungen. Treibt die Delivery Reliability-Dimension und das v3.4 Epoch-Berechtigung-Verhältnis für Uptime.
Flare Block Explorer ↗https://flare-explorer.flare.network
Schreibgeschützter Browser aller On-Chain-States. Ermöglicht es jedem, die RewardClaimed-Events (claimType=3 für MIRROR) des V2 RewardManagers, Validator-Stake-Summen, Gebührenänderungen und mehr zu verifizieren.
Flare Portal (Staking) ↗https://portal.flare.network/staking
Offizielle Staking-Schnittstelle. Autorisierte Quelle für aktuelle Self-Bond- / delegierte Stake-Beträge und Validator-Endzeitpunkte, die unsere P-Chain-RPC-Abfragen speisen.
Flaremetrics Public API (FTSO-Provider) ↗https://api.flaremetrics.io/api/v1/ftso/providers?limit=200
Der genaue Endpunkt, den unser Cron konsumiert, mit Entity-Profilen, FTSO-Scores, Gebühren und NodeIds im Hex-Format. Jeder kann ihn direkt aufrufen.
Flaremetrics Public API (Node-Registrierungen) ↗https://api.flaremetrics.io/api/v1/node-registrations?limit=500
Hex → cb58 NodeID-Umwandlungstabelle. Wir paginieren diese, um das Entity-zu-NodeID-Nachschlagewerk zu erstellen, das jeden cb58-Format-Konsumenten antreibt.
Keine privaten Daten, keine proprietären Modelle. Der Scoring-Algorithmus ist in services/validators/scoring.ts in der FlareWatch-Codebasis implementiert. Operatoren oder Forscher, die die Implementierung direkt inspizieren möchten (anstatt die obige Prosa + Formeln zu lesen) — oder sie für ihre eigene Nutzung forken möchten — können [email protected] eine E-Mail senden, um Zugriff anzufordern. Wir werden die Datei als eigenständiges Open-Source-Paket veröffentlichen, falls es echte Nachfrage gibt.
Wie Scores aktualisiert werden
Der Cron bei /api/cron/refresh-validators berechnet den Score jedes aktiven Validators alle 5 Minuten neu. Eingaben (P-Chain-RPC-Abfragen, Flaremetrics, FSE, Reward-Scripts) werden bei jedem Durchlauf aktualisiert abgerufen.
v3.5 hat Smoothing über die letzten 4 Cron-Snapshots hinzugefügt (Gewichte: 0,5 / 0,3 / 0,15 / 0,05), damit der angezeigte Score nicht bei vorübergehendem Input-Rauschen herumspringt. Der vom Cron berechnete Rohscore wird weiterhin für zukünftige Smoothing-Berechnungen gespeichert, und das Score-Breakdown-Panel zeigt jeden Dimensions-Wert an, damit Sie sehen können, was sich geändert hat.
Die Algorithmus-Version wird auf jedem gecachten Score-Record eingeprägt. Wenn wir eine neue Version veröffentlichen, erhält jeder Score das neue Tag. Die Versions-Karte unten dokumentiert jede Änderung.
Flares Strafmodell

Flare slasht keine Validator-Stakes. Der gesamte Strafmechanismus für Validator-Fehlverhalten ist Reward-Verwirkung plus das FIP-10-Passes-System. Es gibt keine Double-Signing-Slash, keine Equivocation-Slash, kein Stake-Destruction-Event, das wir verfolgen müssen. Validators, die die FIP-10-Mindestbedingungen nicht erfüllen, verlieren die Rewards dieser Epoche (vollständige Verwirkung bei Null Passes, ansonsten ein Pass pro Protokoll, bei dem sie fehlgeschlagen sind); ihr gesperrtes Prinzipal bleibt unverändert.

Das bedeutet, dass der Score keine "Slashing-Historie"-Dimension hat — es gibt keine solche Historie zum Verfolgen. Was wir VERFOLGEN, sind die Konsequenzen jeden Mindestausfalls: Der Validator verdiente in dieser Epoche Null, was in epochsIncluded / epochsObserved erfasst wird. Das v4.2-Update vom 14.05.2026 erweiterte den Zuverlässigkeitsmultiplikator des Scores, um dieses Verhältnis über die gesamte FIP-10-Mindestmenge (Uptime, FSP-Signing, FTSO-Submission-Rate, FDC-Teilnahme) zu nutzen, sodass ein Validator, der einen Mindestwert nicht erfüllt, proportional in der Uptime-Dimension bestraft wird, unabhängig davon, welche Achse fehlgeschlagen ist.

FIP-10-Mindestschwellen, bezogen von dev.flare.network/network/fsp/rewarding: Staking erfordert 80% Uptime + 1 Mio. FLR aktives Self-Bond; FTSO-Anchor-Feeds erfordern Schätzungen innerhalb von 0,5% des Konsens-Medians in 80% der Runden; FTSO-Block-Latency-Feeds erfordern Einreichung von 80% der erwarteten Updates; FDC erfordert Teilnahme an 60% der Abstimmungsrunden. Validators, die die 80%-Uptime- + 1-Mio.-Self-Bond-Grenze erfüllen, aber unter den 3-Mio.- / 15-Mio.-Verdienst-Schwellen liegen, erhalten weiterhin Rewards, können aber keine Passes sammeln — die Grauzone wird durch die passEligibility: "at-risk"-Klassifizierung dieser Karte sichtbar gemacht.

Versionen
v4.8 (2026-09-17) — Reward-Epochen werden jetzt mit ihrer tatsächlichen Länge annualisiert. Alle gemessenen Validator-Sätze (bereitgestellte APR, Delegation, MIRROR, Operator-Eigenkapitalrendite) wurden mit einer 3,19-Tage-Reward-Epoche annualisiert – ein am 2026-04-04 hinzugefügter Wert, der als anhand von Block-Zeitstempeln gemessen beschrieben wurde, obwohl nichts ihn tatsächlich gemessen hat. Flare Reward-Epochen sind exakt 3,5 Tage – FlareSystemsManager's rewardEpochDurationSeconds gibt 302.400 zurück und jeder Epoch-Start on-chain ist 3,500 Tage auseinander – daher las jeder gemessene Satz etwa 9,7 % zu hoch für fünfeinhalb Monate, auch unserer. Die Länge wird nun aus diesem Contract gelesen. Jede gemessene APR fällt um denselben Faktor, 3,19 ÷ 3,5 (Netzwerk-Median 9,08 % → 8,28 %; FlareWatch 8,17 % → 7,45 %). Scores: nur Delivery Reliability ändert sich, da es den gemessenen Satz mit dem theoretischen Satz für die Validator-Gebühr vergleicht. Die überhöhte Seite hatte 91 % der Validatoren bei der 1,0-Obergrenze platziert, also scheinbar mehr zahlend als möglich; mit der tatsächlichen Epoch-Länge beträgt das Median-Verhältnis Bereitgestellt-zu-Theoretisch 0,990. Bei Simulation über 168 Validatoren mit vor der Veröffentlichung gemessenen Daten: Median −0,32 Punkte, 146 verlieren unter 1 Punkt, 13 liefern bereits unter ihrer gebührenbedingten Rate 2–3,5 Punkte. Der Community Trust Longevity Fallback konvertiert Epochen mit derselben Länge in Tage und wird ebenfalls korrigiert; es ändert keinen Score, da es höchstens 8 Epochen (28 Tage) sieht, unter seinem 30-Tage-Schritt in beide Richtungen. Signierte Performance Attestationen verwendeten dieselbe falsche Länge; die Recompute-Spezifikation ist zu rev.3 überarbeitet und rev.2 wird verbatim mit offenlegtem Fehler beibehalten.
v4.7 (2026-08-19) – Zweiseitige Self-Bond in der Community-Trust-Dimension. Trust bewertete Self-Bond des Operators nur als VERHÄLTNIS (eigene Bond ÷ Gesamtstake), daher erhielt eine große, durch Delegationen verwässerte Self-Bond den gleichen Score wie eine kleine Bond bei diesem Verhältnis – der Score war blind für das tatsächlich aufgebrachte Kapital. Im Live-Netz hielten 61 von 178 Validatoren ≥10M Self-Bond bei <10% Verhältnis, also ein Drittel des Feldes war unterbewertet. v4.7 wertet Self-Bond nach dem BESSEREN von Anteilswert (≥10% → +2, 5–10% → +1, unverändert) ODER absoluter Größe (min(1, selfBond ÷ 20M) × 2, saturierend bei der oberen Netzwerk-Dezil P-Chain-Bond) auf, nimmt das Maximum und deckt das Sub-Signal immer noch bei +2 ab – die Trust-Obergrenze (11) und die zusammengesetzte Obergrenze (100) sind unverändert, und die unter-FIP-10-Hohlgrenze (<1M FLR → −1) ist unverändert. Spiegelt die zweiseitige Self-Bond, die der FTSO-Provider-Score bereits nutzt. Feldweit Vorher/Nachher über alle 178 Validatoren, archiviert vor Release: 58 rücken auf, keiner rückt ab, kein Score steigt um mehr als einen Punkt, und die Spitze der Bestenliste ist unverändert. Unser eigener Node rückt um einen Punkt auf (83 → 84) nach der gleichen Regel wie jeder andere gut kapitalisierte Operator – kein Term nennt uns.
v4.6 (2026-08-13) — MIRROR gelieferter-Magnitudbonus. Die MIRROR-Dimension bewertete zuvor nur Durchsatz (den Anteil von MIRROR, der Delegierer erreicht, = 1 − Gebühr) und Partizipationsstatus — sie war blind für den gelieferten BETRAG. Ein Validator, der eine viel höhere gelieferte MIRROR-Rate (mirrorAPY, netto Gebühr) als das Feld bezahlte, verdiente keinen Kredit dafür, daher konnte ein genuiner höher-Rendite-Node unter einem niedrig-Rendite-Node auf den Rendite-Dimensionen ranken. v4.6 fügt einen kleinen, gedeckelten, median-verankerten Bonus hinzu: nur für Mirror-aktive Validatoren, clamp((mirrorAPY / networkMedianMirrorAPY − 1,2) × 5, 0, 2). Nur Lieferung über 1,2× der Netzwerk-Medianrate verdient es, und es maximiert sich bei +2, wodurch die MIRROR-Dimensionsdecke von 10 auf 12 angehoben wird (die Composite wird immer noch auf 100 geklemmt). Sie ist an die Netzwerk-Medianrate, nicht das Volumen, verankert, daher ist sie konstruktionsbedingt größenneutral: über das Live-Feld hinweg korreliert der Bonus NEGATIV mit Self-Bond (er begünstigt kleine Validatoren, die hohe Raten liefern, nicht große). Ein feldbreiter Vorher-Nachher über alle aktiven Validatoren wurde vor dem Rollout archiviert — die meisten Validatoren bewegen sich nicht, und der obere Bereich der Rangliste ist unverändert. Dieselbe Formel gilt für jeden Validator, einschließlich unseres eigenen Nodes.
v4.5 (2026-07-16) — Extreme-Gebühren-Penalisierung. Die Fee-Reasonableness-Dimension sättigt sich bei 0/7, sobald ein Gebühr den Markt-Anker + 20 Punkte übersteigt (~40% nach Granite); von dort bis zu einer 100%-Gebühr reagierte die Composite gar nicht mehr auf das Gebühr, sodass ein 100%-Gebühren-Validator — einer, bei dem Delegatoren NICHTS erhalten — immer noch in den 40ern bei seinen gebührenblinden Dimensionen punktete. Bei einem Delegatoren-orientierten Score ist dieses Ergebnis nahezu disqualifizierend, nicht Mittelfeld. v4.5 fügt eine Composite-Penalisierung hinzu, angewendet als Bruchteil der positiven Dimensions-Summe: null bei oder unter einer 50%-Gebühr (keine Doppelzählung im Bereich, den die Fee-Dimension bereits einpreist), dann linear ansteigend bis 75% des Scores bei einer 100%-Gebühr. Ein 100%-Gebühren-Node landet bei etwa 10/100 — immer noch aufgelistet und rangiert, eindeutig kein Delegations-Kandidat. Es ist eine reine Funktion des On-Chain-Gebührs, identisch für jeden Validator, auch für unseren eigenen Node.
v4.4 (2026-07-11) — Granite Untergrenzenbewusster Gebührenanker. Der Granite Hard Fork (Flare, 2026-07-14) erzwingt eine minimale Validator-Delegationsgebühr von 20%. Der Gebührenberechnung-Anker wird zu max(beobachtete minimale aktive Gebühr, Protokoll-Untergrenze): Jede Gebühr auf oder unter dem legalen Minimum erhält volle Punkte, und nur Gebühren darüber werden nach Entfernung bestraft. Begründung: Mit ungespezifiziertem Grandfathering von laufenden Stakes upstream würde die Verankerung an einer 2%-Vererb-Regelung (oder vor dem Fork 0%-Altlast) protokollkonforme 20%-Betreiber als nahezu extraktiv bewertet haben — und würde einen Gebührenunterschied doppelt gezählt haben, den die Netto-Rendite bereits in gelieferten Begriffen berücksichtigt. Keine andere Dimension hat sich geändert. Wenn die gesamte Kohorte die Untergrenze erreicht, vergibt die Dimension gleichmäßig volle Punkte — Gebühren zählen nicht mehr, sobald niemand danach konkurrieren kann.
v4.3 (14.05.2026) — Active Outage Penalty wurde als flache Post-Dimensions-Abzug hinzugefügt. Der bestehende uptimeReliability-Multiplikator ist symmetrisch — 5 verstreute Fehlschläge über 24 Epochen kosten das Gleiche wie 5 Fehlschläge hintereinander — aber operativ sind diese sehr unterschiedliche Signale: Verstreute Fehlschläge bedeuten chronische Instabilität, eine Serie bedeutet, dass der Validator JETZT kaputt ist. v4.3 liest die zusammenhängenden Serie von !eligible Epochen am Kopf der Validierungshistorie und zieht 0 Punkte für 0–1 aufeinanderfolgende Fehlschläge ab (normale Varianz / einzelner vorübergehender Fehlschlag), 3 Punkte bei 2 (sich entwickelnder Ausfall), 6 Punkte bei 3 (anhaltender Ausfall) und 10 Punkte bei 4+ (aktiver längerfristiger Ausfall), wobei das Gesamtergebnis auf 0 begrenzt ist. Überlagert auf — nicht ersetzend — den Zuverlässigkeitsmultiplikator, da die beiden unterschiedliche Gefahren erfassen. Auslöser: Der Luganodes-ähnliche Vorfall vom 14.05.2026, bei dem mehrere jüngste Epochen hintereinander fehlschlugen, während Delegatoren aktiv Stakes sperrten; das Seriensignal ermöglicht Delegatoren, einen laufenden Ausfall vor der Commitment-Entscheidung zu sehen. Strafen werden als eigener Abschnitt im Score-Breakdown-Panel angezeigt, damit die 9 positiven Dimensionen immer noch auf 100 summieren.
v4.2 (14.05.2026) — ZWEI verwandte Fixes, gemeinsam versendet als Antwort auf eine öffentliche Korrektur von AU (@aucc_official) zu Luganodes' Score. (1) Die deliveredAPY-Berechnung multipliziert jetzt die Rate pro Verdienst-Epoche mit `epochsIncluded / epochsObserved`, sodass die angezeigte APR die EFFEKTIVE Rate widerspiegelt, die ein Delegator tatsächlich über das Beobachtungsfenster erhält — einschließlich der Null-Verdienst-Epochen, wenn ein Validator FIP-10-Mindestanforderungen nicht erfüllt. Die vorherige Implementierung mittelte nur Verdienst-Epochen und zeigte Validatoren ihre Guten-Epochen-Rate, was Mindestausfälle maskierte. (2) Der Zuverlässigkeitsmultiplikator der Uptime-Dimension erweiterte sich von nur Uptime (epochsUptimeEligible / epochsObserved) auf die gesamte FIP-10-Mindestmenge (epochsIncluded / epochsObserved). Ein Validator mit 100% RPC-Uptime, der FSP-Signing oder FTSO-Submission-Rate nicht erfüllt, verzeichnet jetzt einen proportionalen Treffer in der Uptime-Dimension, unabhängig davon, welche Mindestvorgabe er verpasst hat. Nettoeffekt bei Luganodes spezifisch: deliveredAPY sinkt von 10,86% auf ~5,43% (entspricht der tatsächlichen halben Ausschüttungsrealität), Uptime-Zuverlässigkeit sinkt von 1,0 auf 0,5, Score sinkt erheblich. Die gleiche Korrektur gilt für jeden Validator mit `epochsIncluded < epochsObserved` — netzweit werden echte Partizipations-Qualitätslücken sichtbar, die zuvor verborgen waren.
v4.1 (14.05.2026) — Net Yield-Dimension wechselte von theoretischer APR (Formel: gross_APR × (1 − Gebühr)) zu GEMESSENER deliveredAPY aus Flare Foundation Reward-Scripts, mit theoretischem Fallback pro Validator nur wenn keine Messungshistorie existiert. Auslöser: FIP-16s Inflationsreduzierung (5% → 3%) ist am 14.05.2026 live gegangen, und der Nenner für berechtigte Stakes in der theoretischen Formel driftete von der On-Chain-Realität ab, sodass die theoretische APR die gelieferten Renditen im Netzwerk um ~2× unterbewertete. Der Wechsel zu Gemessen-First bringt den Score-Input mit den tatsächlich empfangenen Staking-Renditen in Übereinstimmung. Der networkMedianAPR-Anker wurde auch mit der gleichen Gemessen-First-Methodik neu berechnet, sodass der Verhältnis-Vergleich auf beiden Seiten konsistent bleibt — Scores sollten ungefähr stabil sein (ein Validator am Netzwerk-Median erzielt weiterhin ~12/18, etc.), nur basierend auf echten gelieferten Raten anstelle von Formel-Output.
v4.0 (11.05.2026) — Hauptversion. Der v3.7-v3.10-Zyklus stellt kumulativ ein strukturelles Umschreiben des Scoring-Systems dar, groß genug, um die Versionsbump zu rechtfertigen. Zusammenfassung: Zwei Dimensionen hatten ihre Grenzen geändert (Trust 10→11, Capacity 8→7); Operator Quality-Formel wurde umgeschrieben zu max(Verifizierung, FTSO-abgeleitet), sodass Partizipation nicht schaden kann; die vier verbleibenden bucketed Dimensionen (Uptime, Fee, Delivery, Time Remaining) wurden linearisiert, um Grenzeffekte zu beseitigen; drei neue Score-Komponenten wurden hinzugefügt (30-Tage-Delegations-Retention, 30-Tage-Self-Bond-Trajektorie, Auto-Promotion zu kuratiertem Tier); Multi-Node-Operator-Aggregation wurde für Trust-Count + Konzentration eingeführt; Longevity ist jetzt wipe-immun via Reward-Scripts Epoch-Präsenz; und zwei perverse Anreize wurden beseitigt (die Operator Quality FTSO-Partizipations-Strafe und die Uptime 95%-Umkehr-V-Kante). Jeder Input zum Score ist jetzt extern verifizierbar — keine redaktionelle Entscheidung trägt Last. Validators können die +7-Baseline des kuratierten Operators durch beobachtbares Verhalten verdienen (90+ Tage beobachtet, 25+ Delegatoren, Retention nicht rückläufig, FIP-10-konform Self-Bond), keine E-Mail-das-Team erforderlich. Siehe v3.7-v3.10-Einträge unten für die granularen Änderungen, die diese Version ausmachen.
v3.10 (11.05.2026) — Geschlossene letzte kuratierungslücke im Score. Die +7-Baseline des kuratierten Operators bei Operator Quality erforderte zuvor manuelle Aufnahme in unsere KNOWN_VALIDATORS-Liste, was die einzige bedeutsame redaktionelle Entscheidung nach dem v3.7-v3.9-Audit-Zyklus war. v3.10 fügt einen objektiven Auto-Promotion-Pfad hinzu: Jeder Validator mit 90+ Tagen FlareWatch-Beobachtung, 25+ operator-aggregierte Delegatoren, Retention nicht im Rückgang (30-Tage-Drop ≤ 15%) und FIP-10-konform Self-Bond qualifiziert sich automatisch für die +7-Baseline — keine manuelle Überprüfung erforderlich. KNOWN_VALIDATORS bleibt als Fast-Track für institutionelle Operatoren, die das 90-Tage-Fenster noch nicht angesammelt haben (denken Sie an einen Launch-Day Ankr- oder Kiln-Eintrag), aber der typische Fall ist jetzt vollständig automatisiert. Alle vier Kriterien sind On-Chain-abgeleitet oder nahe-On-Chain (Delegatoren-Anzahl, Retention, Self-Bond) plus unser eigener Beobachtungs-Zeitstempel — nichts Subjektives, kein E-Mail-das-Team-Gating. Nettoeffekt: Ein Validator kann die +7-Tier durch Verhalten allein verdienen. Die meisten etablierten Operatoren im Netzwerk erfüllen die Kriterien bereits heute.
v3.9 (11.05.2026) — Grenzeffekt-Bereinigung über die verbleibenden vier bucketed Dimensionen, nach der Überprüfung jedes Teils des Scores auf Fairness. Behoben: (1) Eine perverse Umkehr-V-Kante in der Uptime-Kurve bei 95% — ein Wechsel von 94,99% → 95,00% Uptime kostete 4 Punkte (der 95-99%-Ast begann bei 0 statt der Obergrenze des unteren Astes von 4). Die gleiche Form des inversen Anreizes, den wir gerade in Operator Quality (v3.8) behoben haben. (2) Fee Reasonableness-Schwellen linearisiert — vor v3.9 konnte ein 0,01%-Gebührenerhöhung über eine Bucket-Grenze bis zu 2,5 Punkte kosten. Jetzt stückweise linear mit zunehmend steileren Steigungen, die die Bucket-Werte an Grenzen bewahren (niedrige Gebühren kaum bestraft, extraktive Gebühren hart bestraft). (3) Delivery Reliability deliveryRatio-Schwellen linearisiert — gleiche Muster, bis zu 2-Punkt-Kanten beseitigt. (4) Time Remaining Bucket-Schwellen linearisiert — kleinere Kanten (max 2 Punkte an der 14-Tage-Grenze) aber noch vorhanden in einer kleinen Dimension; jetzt glatt. Net Yield, MIRROR Participation und Capacity Profile wurden überprüft und als fair-wie-ist bestätigt (bereits linear/kontinuierlich). Gesamtkappe unverändert bei 100. Keine Score-Regressionen nach Entwurf; die einzigen Validators, deren Scores sich bewegen, sind diejenigen, die zufällig exakt auf einer vorherigen Bucket-Grenze saßen.
v3.8 (11.05.2026) — Operator Quality-Dimension überprüft und neu geschrieben nach einer Fairness-Überprüfung. Drei Fixes zusammen versendet. (1) Beseitigung eines perversen Anreizes — ein bekannter Operator mit einem mittleren FTSO-Score (z.B. 50) erzielte 4 Punkte, aber der gleiche Operator, der komplett aus FTSO ausstieg, erzielte 7 Punkte. Unter v3.8 ist der Score max(Verifizierungs-Basis, FTSO-abgeleitet), sodass FTSO-Partizipation nur helfen kann, niemals schaden. (2) Einführung eines zwischenliegenden Verifizierungs-Tiers — Operatoren mit auto-erkannten Namen aus Flaremetrics oder FSE (aber noch nicht in der kuratierten KNOWN_VALIDATORS-Map) erhalten +3 statt 0, wodurch die vorherige 7→0-Kante gemildert wird. (3) Zeigt beide Signale im Breakdown-Detail, wenn Verifizierung einen niedrigen FTSO-Score übertrifft (z.B. "Kuratierter Operator · FTSO 45"), damit Operatoren genau sehen, woher ihr Score kommt. Die 12-Punkt-Kappe ist unverändert; keine Rebalance erforderlich, da die Änderungen nur die Score-Verteilung unten verbreitern (Belohnung für teilweise Verifizierung), ohne die Oberseite zu verändern.
v3.7 (11.05.2026) — Community Trust-Dimension überprüft und erweitert nach einer Operator-Fairness-Überprüfung. Drei Ergänzungen: (1) Multi-Node-Operator-Aggregation — Operatoren, die mehrere P-Chain-Nodes betreiben (AU, FlareBus, Aureus Ox, Kiln, usw.) haben jetzt ihre Delegatoren-Anzahl und gesamte Stake für Trust-Count + Konzentrations-Signale aggregiert, sodass sie nicht für die Verteilung der gleichen Delegatorenbasis über mehrere Nodes bestraft werden. (2) 30-Tage-Delegations-Retention-Signal (±0,5 Pt.) — unterscheidet wachsende / stabile / schrumpfende Validators mit einem gleitenden Fenstervergleich. Die Snapshot-only Trust-Dimension konnte diese vor v3.7 nicht auseinanderhalten. (3) 30-Tage-Self-Bond-Trajektorie (±0,5 Pt.) — belohnt Operatoren, die ihren Self-Bond im Laufe der Zeit erhöhen, bestraft diejenigen, die stillschweigend unbonden. Unterschiedlich von der Sudden-Change-Strafe, die nur einzelne große Drops fängt. Kappe rebalance: Trust 10 → 11, Capacity 8 → 7. Bug-Fixes aus dem Audit: (a) Null Self-Bond trifft jetzt korrekt die sub-FIP-10-Strafe (zuvor ließ ein `selfBondFLR > 0`-Gate genau-0 Self-Bond die Strafe entkommen). (b) Kleine Self-Bond-Verhältnisse zwischen FIP-10-Boden und 5% zeigen jetzt den tatsächlichen Prozentsatz im Breakdown-Panel, damit Operatoren sehen, was die Lücke zu den +1 / +2-Tiers schließt. (c) Longevity-Bonus ist jetzt wipe-immun — greift auf Reward-Scripts Epoch-Präsenz zurück, wenn first-observed KV künstlich frisch ist.
v3.6 (11.05.2026) — Zwei Fixes für MIRROR-Erkennung, zusammen versendet. (a) Die Erkennung liest jetzt von zwei kanonischen Quellen: On-Chain RewardClaimed(claimType=3) Events aus dem V2 RewardManager UND claimType=3 Zuordnungen in der offiziellen FSP Merkle JSON (die gleichen Daten, die Flares eigenes Signing-Tool konsumiert). Jedes Signal ist ausreichend — fängt Validators, deren MIRROR zugeordnet wurde, aber noch nicht on-chain geansprucht wurde. (b) Das Cross-Checking gegen die Merkle enthüllte einen separaten Key-Format-Bug: validators:mirror-stats hatte gemischte hex20/cb58 NodeID-Keys (der On-Chain-Indexer schrieb hex, wenn ein Validator noch nicht in unserer kuratierten Name-Liste war), während jeder UI-Konsument nur nach cb58 nachschlug — also ~95 Validators' Status war für die Anzeige unsichtbar. Das Nachschlagenwerk normalisiert jetzt beide Formate über die Validators-Tabelle, Score-Breakdown-Panel, mirror-stats Public API, Yield-Seite Staking Positions-Karte und FTSO-Provider-Panel. Betroffene Validators sehen ihre MIRROR Participation + Operator Quality-Dimensionen und Overall FlareWatch Score am nächsten Cron-Zyklus um 9-10 Punkte ansteigen. Entdeckt über einen FTSO-Provider-Bericht (FlareBus, 11.05.2026) — Anerkennung und Dank. Ihr Feedback verbesserte materiell jeden Delegators' Sicht auf das Netzwerk, nicht nur ihre eigenen Scores.
v3.5 (09.05.2026) — Net Yield ist jetzt median-verankert gegen Netzwerk-APR (ein Validator am Median erzielt 12/18, Top-Performer erreichen 18, Unteres Quartil fällt auf 0). Trust-Dimension absorbierte Self-Bond-Ausrichtung als vierte Komponente (proportionales Self-Bond belohnt Skin-im-Spiel; sub-FIP-10-Boden verzeichnet kleine Strafe). Neues "NEU Xd"-Badge zeigt Validators, die FlareWatch nur <30 Tage beobachtet hat, sodass Staker sehen können, wenn die Track Record dünn ist.
v3.4 (09.05.2026) — Uptime-Dimension mischt jetzt momentane RPC-Uptime mit historischer FIP-10-Epoch-Berechtigung-Quote. Vor v3.4 war die Dimension nicht diskriminierend (92,9% der Validators hatten 100% RPC-Uptime). Zuverlässigkeits-Quote abgeleitet aus epochsUptimeEligible / epochsObserved über die letzten 8 Reward-Scripts-Epochen — ein Zeitreihen-Signal, das Validators, die gelegentlich FIP-10-Mindestanforderungen verfehlen, bedeutungsvoll von denen unterscheidet, die es nicht tun.
v3.3 (09.05.2026) — Delivery-Dimension nutzt jetzt exponentiell zeitgewichtete mittlere Rate (jüngste Epochen zählen mehr, Decay-Konstante 0,85) und wendet Varianz-Strafe an (Variationskoeffizient × 0,5, begrenzt auf −30%). Berechnet aus Per-Epoch Reward-Scripts Daten — Sample-Größe trägt durch als der bestehende Confidence Dampfung.
v3.2 (09.05.2026) — Multi-Signal Community Trust (Count + Konzentration + Longevity); First-Observed-by-FlareWatch Tracking im KV für die Longevity-Bonus persistiert; Stake-Ende Edge-Case (Validators innerhalb 14 Tagen des Ablaufs Score 0 bei Time Remaining, da sie keine neuen Delegationen unter FIP-10 akzeptieren können); Methodology-Seite öffentlich gemacht; Operator-Feedback-Kanal ausgeblendet; Algorithmus-Version auf jedem gecachten Score-Record gestempelt.
v3.1 (09.05.2026) — Delivery-Dimension aus Reward-Scripts Daten verdrahtet; Operator Quality (lineare Interpolation), Capacity (Zelt-Funktion) und Trust (Log-Skala) glatt gemacht; FSP-bekannt + Null claimType=3 als MIRROR "inaktiv" statt "Keine Daten" reklassifiziert; scoreBreakdown Server-seitig persistiert, sodass Client nicht ohne vollständige Eingaben neu berechnet.
v3 (09.05.2026) — Ersetzt binäre Identity-Bonus mit kontinuierlicher Operator Quality. MIRROR Participation als dedizierte Dimension mit Gebühren-Durchlauf hinzugefügt. Gebundene Kapazität neutral statt 0-Punkt-Strafe gemacht. APY/Fee Double-Count via Net Yield entfernt. Banden rekalibriert (Top Tier 90+, Strong/Good/Acceptable/Unter Median).
v2 (vor 09.05.2026) — Original 8-Dimensions-Score (Uptime / APY / Fee / Identity / Capacity / Trust / Time / Delivery). Eingestellt wegen APY/Fee Double-Count, binäre Identity-Strafe, gebundene-Kapazität-Strafe, keine MIRROR-Dimension. Dokumentiert zu historischen Referenzen.
FlareWatch FTSO delegation addresses. Flare (chainId 14): 0x973B899Fe1422efDdeBE1d54E9A6487a70966aC5. Songbird (chainId 19): 0xaf4eF2A0Ecf8d914Db6b721D3eb79C46CA612796.