1 Commits

Author SHA1 Message Date
39cbad522e TASK-041: fix favorite star reverting after switching tabs
toggleFavorite kept starredCoordinatesCache in sync with a successful
star/unstar but never patched repositorySnapshots (the per-mode
full-repository-list cache), so a starred repository's count reverted
to its pre-toggle cached value on the next visit to that mode, and a
newly-starred repository could be silently missing from an
already-cached favorites list.

Fix: two new helpers (adjustCachedStarCounts, removeFromCachedSnapshot)
patch every cached snapshot containing the toggled repository, and a
star invalidates just the FAVORITES snapshot key if already cached.
Chosen over a full cache-clear-and-refetch after live testing showed
Gitea's own starsCount can lag slightly behind a star/unstar on its
plain repository-listing endpoint.

Also fixes a related gap: unstarring from the FAVORITES tab wasn't
updating starredCoordinatesCache at all (only the two ALL-mode
branches were).

Two new regression tests; all existing tests pass unmodified.
Build/test/lint green, live-verified on device.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-29 19:42:08 +09:00