3b472cf519
All three API calls (/api/gallery/scroll, /api/gallery/timeline, /api/gallery/jump) were still sending the legacy ?tag=<name> param. Task 10's backend switch silently ignored it, so subsequent scroll loads and timeline navigation fetched unfiltered content on a tag-filtered gallery page. Read tag_id from window.location.search at init and cache it in state.activeTagId. Use it as ?tag_id=<int> on every subsequent fetch. state.activeTag (the display string) stays for human-facing uses elsewhere. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>