Skip to content

feat(archive): read state everywhere, archive of every story ever shown - #39

Merged
JustWallage merged 1 commit into
mainfrom
read-state-archive
Aug 7, 2026
Merged

feat(archive): read state everywhere, archive of every story ever shown#39
JustWallage merged 1 commit into
mainfrom
read-state-archive

Conversation

@JustWallage

Copy link
Copy Markdown
Owner

Feed items gain read state (feed_items.opened_at + POST
/api/feeds/:id/items/:itemId/open), and every list — HN feed, HN archive,
feed, feed archive — now revalidates its own cache entry on an open via
useRecordOpen, so the clicked row greys in place instead of on reload.

The HN archive is rebuilt on curations.last_shown_at: it holds every story
ever shown (current feed included), most recently shown first. The old
current = false filter also matched candidates the AI rejected, which were
never shown, and relevant is re-derived each run so it cannot mark history.

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

Feed items gain read state (feed_items.opened_at + POST
/api/feeds/:id/items/:itemId/open), and every list — HN feed, HN archive,
feed, feed archive — now revalidates its own cache entry on an open via
useRecordOpen, so the clicked row greys in place instead of on reload.

The HN archive is rebuilt on curations.last_shown_at: it holds every story
ever shown (current feed included), most recently shown first. The old
current = false filter also matched candidates the AI rejected, which were
never shown, and relevant is re-derived each run so it cannot mark history.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@JustWallage
JustWallage merged commit 7e4b524 into main Aug 7, 2026
3 checks passed
@JustWallage
JustWallage deleted the read-state-archive branch August 7, 2026 10:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant