Convert the 12 bundled binaries at HEAD from Git LFS pointers to regular Git objects (ffmpeg/ffprobe x3, redis-server, yt-dlp, MaxMind GeoIP2-ISP + cidr, guess, login-bg.mp4) and remove the filter=lfs rules from .gitattributes. Plain-git clone bandwidth is not metered, so this stops consuming the repo's Git LFS budget. HEAD-only: pre-existing commits/tags still reference LFS objects (no history rewrite).
database.sql is a 7.7 MB text SQL schema — it was tracked via LFS by accident. Text
belongs in a regular git blob (real diffs, no LFS bandwidth). Drop the .gitattributes
rule and renormalize; the file content and install behaviour are unchanged.
The proxy-node archive is now fetched from XC_VM_Proxy releases at install time
(ProxyArchiveUpdater / cron:proxy) and no longer bundled, so drop the 56 MB LFS
object and its .gitattributes rule. Fresh clones and CI checkouts stop spending LFS
bandwidth on it; new panels download it at install, existing ones via cron:proxy.
Old LFS versions remain in history (storage only, not bandwidth) — a history
migration is a separate decision.
The .gitattributes had src/public/ (lowercase) but the actual directory
is src/Public/ (uppercase). On Linux (case-sensitive filesystem) this
mismatch caused Git LFS to not filter the file, leaving a 130-byte
pointer stub in the archive and failing the verify_no_lfs_pointers check.