Add round-robin posting mode

One story per interval_hours (default 4), cycling through enabled sources
in config order. Empty sources are skipped and the pointer advances to
whichever source actually posted. State persists across restarts.

Duplicate-flagged stories now get a _duplicate sentinel channel so they
stay out of the rotation pool alongside _discarded.
This commit is contained in:
prosolis
2026-05-22 19:58:46 -07:00
parent 69967b25c6
commit 3baec4c8bc
7 changed files with 451 additions and 2 deletions

View File

@@ -21,6 +21,9 @@ posting:
burst_cap_count: 3
burst_cap_window_seconds: 1800
daily_cap_total: 5 # hard global cap across ALL channels (rolling 24h); 0 disables
round_robin:
enabled: false # when true, replaces immediate posting with paced rotation
interval_hours: 4 # one story per N hours, cycling through sources in config order
storage:
db_path: "./data/pete.db"