a distraction free minimalist rss reader

Move reindexing out of the UI and into a separate cli command #17

Merged zaphar.bsky.social
targeting main
Merged opened by and assigned to zaphar.bsky.social
targeting main

Add a single global cadence clock for the whole feed list, distinct from per-feed eligibility. refresh_due() (pure, deterministic — takes now) decides when an automatic full-list refresh is due, anchored on a durable last_refresh stored machine-locally in the per-store cache dir so a synced store copy never conflicts on a value that changes every cadence.

  • turss-domain: refresh_due() + unit tests (never-refreshed / within-window / past-window / boundary / unparseable cases).
  • turss-store: load_last_refresh / save_last_refresh on the Store trait, the fsstore impl, and store tests.
  • turss-runtime/queue: arm the automatic refresh from the cadence clock.
  • flake: drop the devshell shellHook echo.

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

This pull request has no versions submitted yet.