Retire davewiner's 922 rows, without taking the ones people still read

davewiner's OPML left config.toml before retire_group existed, so its
derived rows were skipped by every scan but never cleared. At startup the
daemon now retires every group whose parent is gone from config. And
retire_group unmanages a feed that has its own config entry instead of
dropping it: eleven of davewiner's were promoted without being unmanaged,
and dropping them as derived would have deleted their entries. That also
covers removing an OPML or Patreon subscription from the page.

Closes #3.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-15 17:01:27 +00:00
parent eaea520020
commit 4314b11237
3 changed files with 77 additions and 2 deletions

View File

@@ -6,6 +6,26 @@ reasoning lives. New write-ups go at the top.
See [README.md](../README.md) for what the thing is.
## 2026-09-15 — davewiner's 922 rows, retired at last
davewiner's OPML subscription left config.toml before `retire_group` existed, so nothing ever
retired the 922 feeds derived from it. The backstop in `subscriptions()` kept them from being
scanned, but the rows stayed, and 56 of the 75 errors stored in production were theirs: stale, and
never going to change.
Retiring them the obvious way would have done damage. Eleven of the 922 -- xkcd, The Verge,
TechCrunch, Hacker News and others -- had since been given config entries of their own and were
scanned from there, but their rows still said `managed = 1`. `managed_feeds()` returned them, so
`retire_group("davewiner")` would have dropped the ten with no files as derived feeds, deleting
the entries people were reading. `unmanage` exists for exactly this and had never been applied.
`retire_group` now unmanages a feed that has its own config entry instead of dropping it, which
also covers removing any OPML or Patreon subscription from the page, and the daemon retires every
group whose parent is gone from config when it starts. In production that is davewiner alone: 792
rows with nothing downloaded forgotten, 119 with files kept as orphaned, 11 unmanaged. One of the
792, `ars-technica-all-content-2`, has a subscriber but neither a config entry nor a file; the
backstop had already hidden it, so nobody could see it to lose it.
## 2026-09-14 — Settings, for everyone with an account
A user reported that Settings disappeared shortly after they signed in: it showed for a moment,