[GH-ISSUE #395] Improve next song randomization algorithm #225

Closed
opened 2026-02-27 19:17:19 +03:00 by kerem · 0 comments
Owner

Originally created by @EddieTheCubeHead on GitHub (Jun 30, 2024).
Original GitHub issue: https://github.com/EddieTheCubeHead/Stagnum/issues/395

Originally assigned to: @EddieTheCubeHead on GitHub.

Handle the following cases:

  • User with no songs:
    • Should obviously be ignored
  • User whose songs are all under replay floor
    • Should choose another user
  • Multiple users have the same song added
    • When playing the song, should set the stale counter for all versions
  • Joining a pool that already has users that have listened for a long time
    • At the moment, the joined user is the heavily prioritised for a long time while playtime balances
    • Fix this by implementing playtime decay
      • Should be configurable by env variable for now, later might be changeable from user settings. Keep in mind when designing the feature. The default decay time should be one hour.
Originally created by @EddieTheCubeHead on GitHub (Jun 30, 2024). Original GitHub issue: https://github.com/EddieTheCubeHead/Stagnum/issues/395 Originally assigned to: @EddieTheCubeHead on GitHub. Handle the following cases: - [x] User with no songs: - Should obviously be ignored - [x] User whose songs are all under replay floor - Should choose another user - [x] Multiple users have the same song added - When playing the song, should set the stale counter for all versions - [x] Joining a pool that already has users that have listened for a long time - At the moment, the joined user is the heavily prioritised for a long time while playtime balances - Fix this by implementing playtime decay - Should be configurable by env variable for now, later might be changeable from user settings. Keep in mind when designing the feature. The default decay time should be one hour.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/Stagnum#225
No description provided.