aboutsummaryrefslogtreecommitdiffstats
path: root/web/dist/v3/assets/index-CZ6KJbnj.js
Commit message (Collapse)AuthorAgeFilesLines
* fix: store sentinel IntersectionObserver in module-level variable to prevent GCClaude10 days1-148/+0
| | | | | | | | | | | | | | | | | | The load-more sentinel observer was assigned to a local `const observer` that fell out of scope after renderItems() returned. Without a persistent JS reference, engines can garbage-collect the observer, silently breaking infinite scroll (no more items loaded on scroll). Fix: assign to the existing module-level `itemObserver` variable, which is already disconnected/replaced at the top of each renderItems() call. Add three regression tests in regression.test.ts that use a class-based IntersectionObserver mock to capture the callback and verify: - sentinel visible → loadMore fires - sentinel visible while loading → loadMore suppressed - hasMore=false → no sentinel rendered, no loadMore https://claude.ai/code/session_01DpWhB9uGGMBnzqS28HxnuV
* build: rebuild frontend dist (fix ui-check CI failure)Claude10 days1-0/+148
Source changes since last dist commit shifted Vite content hashes. Rebuilding ensures web/dist/v3/ matches a fresh `make ui-vanilla`.