Module reputation

Module reputation 

Source
Expand description

Peer reputation system — R0..R4 tiers computed from QoS history.

§Tiers

TierNameCriteria
R0Quarantinefault_score ≥ FAULT_BLACKLISTED; isolated from trusted peers
R1FledglingNode age < FLEDGLING_DAYS (7 days in the network)
R2Reliableuptime_ratio ≥ 0.95 over 30 d; pos_pass_rate ≥ 0.98
R3Trusteduptime_ratio ≥ 0.99 over 90 d; pos_pass_rate ≥ 0.995
R4Pillaruptime_ratio ≥ 0.999 over 365 d; pos_pass_rate ≥ 0.999

§Reputation score

A continuous reputation_score: i64 underlies the tier computation. Score changes:

EventDelta
PoS challenge passed+PASS_INC
PoS challenge failed−FAIL_DEC
24 h verified uptime+UPTIME_INC
bp pause --eta respected0
bp pause --eta overrun−LATE_PENALTY
Eviction without noticescore reset→0, R0 lock for 30 days

§Placement preference

When selecting Pouch peers for fragment distribution (PutFile), the scheduler prefers peers whose reputation tier is ≥ the sender’s own tier. R0 peers only receive fragments from other R0 senders.

Structs§

ReputationRecord
Per-peer reputation state persisted for the daemon’s lifetime.
ReputationStore
In-memory registry of per-peer ReputationRecords.

Enums§

ReputationTier
Discrete reputation tier for a Pouch peer.

Constants§

FAIL_DEC
Score decrement per failed PoS challenge.
FLEDGLING_DAYS
Days since first-seen after which a node graduates from Fledgling (R1).
LATE_PENALTY
Penalty for overrunning a bp pause --eta deadline.
PASS_INC
Score increment per passed PoS challenge.
R2_POS_RATE
Minimum PoS pass rate required for R2.
R2_UPTIME
Minimum uptime ratio (0–1) required for R2.
R2_WINDOW_DAYS
Observation window for R2 criteria (days).
R3_POS_RATE
Minimum PoS pass rate required for R3.
R3_UPTIME
Minimum uptime ratio required for R3.
R3_WINDOW_DAYS
Observation window for R3 criteria (days).
R4_POS_RATE
Minimum PoS pass rate required for R4.
R4_UPTIME
Minimum uptime ratio required for R4.
R4_WINDOW_DAYS
Observation window for R4 criteria (days).
UPTIME_INC
Score increment per 24 h of verified uptime.