# Changelog

## April 2026

- Team logo download pipeline now produces 128×128 transparent squares directly (via a new `Scripts/square_logo.swift` helper called from `download_team_logos.sh`), so notification attachments can ship the bundled PNG as-is and the banner thumbnail renders crisply without runtime compositing
- Game state tag (PRE / LIVE / CRIT / OVER / FINAL / OFF) now surfaced on each daily game row and on live series rows in the ROUND block
- Playoff series rows in the ROUND block are always clickable (open the NHL series page) and mark completed series as "Final"
- Goal notifications now include the scorer's sweater number, name, and strength tag (PPG / SHG / EN) when available (derived from `/gamecenter/{id}/play-by-play`)
- Regular-season game rows now show the league-wide game number (derived from the NHL gameId)
- New PLAYOFFS ROUND section lists every active series with series score, next game number, and upcoming tip-off time
- Playoff bracket fetched from `api-web.nhle.com/v1/playoff-bracket/{year}` only when needed (initial load and after a playoff game finalizes)
- Removed Team filter option (per-team filtering and team-specific menu bar icon)
- Initial project setup with macOS menu bar app
- NHL scoreboard API integration showing yesterday/today/tomorrow games
- Dynamic polling based on game state (7s live, 10min game day, 1hr idle)
- Click game to open NHL GameCenter, option-click for NHL Videocast
- NHL shield icon in menu bar
- About window using IndieAbout
- Launch at Login support
- Game start notifications (triggered on FUT→LIVE state transition)
- Goal scored notifications with scoring team logo
- 32 team logos downloaded from NHL CDN (SVG + PNG)
- Logo download script for seasonal updates (Scripts/download_team_logos.sh)
- Display Options: Yesterday/Today/Tomorrow, Today/Tomorrow, or Today only
- Game count shown next to menu bar icon
- Game count shown per day in dropdown headers
- Menu item format: "NYR @ WAS 0:2 (FINAL)" / "DAL @ TOR Today @ 7:30 PM"
- NHL shield renders with full color (not template silhouette)
