# Hot-path source files for the per-file ≥70 % coverage gate (frontend).
#
# Mirrors `.github/hot-path-files.txt` for the Rust crates. Each entry is a
# workspace-relative path; the gate script (`scripts/check-frontend-hot-path-
# coverage.sh`) reads `coverage/coverage-summary.json` produced by
# `vitest run --coverage` and fails the frontend-tests coverage job when a
# listed file drops below the floor.
#
# Curation rule (mirrors the backend list): a file belongs here when its
# hot-path code dominates the file and ≥70 % is a reasonable floor. Files
# that are partially covered today but contain large untested surface area
# (e.g. `playerStore.ts`, the unfinished half of `previewStore.ts`) live
# OUTSIDE the gate until their tests grow. Add them as Phase 1–4 coverage
# work lands.
#
# Paths follow the feature-folder layout (`src/features/**`, `src/lib/**`,
# `src/cover/**`) after the frontend restructure; the files below moved out
# of the old `src/utils/**` tree but their contents are unchanged.
#
# Deferred from the gate, with current coverage shown for reference:
#   - src/features/playback/store/playerStore.ts  (40 % — F1 closed under the 50 % floor; further coverage TBD)
#   - src/store/authStore.ts             (79 % — F2 cleared 60 % floor; staying out one or two PRs to verify stability)
#   - src/lib/api/subsonic.ts            (13 % — F3 covered the URL-builder + parser surface; async API endpoints need axios mocking, deferred)

# ── extracted helpers (already at or above threshold) ────────────────
src/cover/coverArtRegisteredSizes.ts
src/lib/server/serverDisplayName.ts
src/lib/server/serverMagicString.ts
src/lib/share/shareLink.ts
src/lib/dom/dynamicColors.ts
src/features/playback/utils/playback/resolvePlaybackUrl.ts
src/lib/share/copyEntityShareLink.ts

# ── M0: pure helpers extracted from playerStore.ts (2026-05-12) ──────
src/lib/util/shuffleArray.ts
src/features/playback/utils/audio/resolveReplayGainDb.ts
src/lib/media/songToTrack.ts
src/features/playback/utils/playback/buildInfiniteQueueCandidates.ts

# ── Phase B.1: pre-React bootstrap + window-kind detector (2026-05-12) ──
src/app/windowKind.ts
src/app/bootstrap.ts

# ── Phase B.2: mini-player webview tree (2026-05-12) ─────────────────
src/app/MiniPlayerApp.tsx

# ── stores (added as their tests grew past the floor) ────────────────
src/features/playback/store/previewStore.ts
