[P0] Removing participants for inactivity #405

Closed @tcharchian opened 2025-10-23 19:48 UTC 0 comments Updated 2026-01-16 05:33 UTC

Removing for inactivity

  • Goal: to remove inactive/invalid participants faster, not send inference requests to them, not allow them to be TAs / Validators, and remove their voting power
  • We need to check for missed inference not only once in an epoch, but more often. E.g., once in X blocks (X = 500?)
  • if missed_stat_signigicant([start_of_epoch, current_heigh]) => remove and jail
  • if invalid_stat_significant([start_of_epoch, current_heigh]) => remove and jail
  • For invalid - we should check how it intercepts with the current check, but we check only for sequential invalidations.
  • introduce additional min_n_samples = 100 to make this regular check less strong
  • open question: we now allow being jailed but an active participant, there is some slashing for that, but the participant still receives most of the reward. It might be okay to leave it that way, but let's think if removing from active participants is better in that case

All the details in that task are sketches, not exact solutions, and should be criticized accordingly.


🔄 Auto-synced from Issue #405 every hour.