summaryrefslogtreecommitdiff
path: root/AGENTS.md
AgeCommit message (Collapse)Author
2026-05-17Add monorepo root orientationPaul Buetow
2026-05-17Restructure repo: move Go server into player-server/Paul Buetow
2026-05-09Document shuffle hotkey behavior (q1)Paul Buetow
2026-05-09Refine media browsing and set coversPaul Buetow
2026-05-05Update AGENTS.md with podcast support documentationPaul Buetow
2026-05-04task l: rename binary from mediaplayer to playerPaul Buetow
2026-05-04task 9: Centralize file extension and media type mappings in internal/mediatypePaul Buetow
Create a new internal/mediatype package with a single source of truth for: - Extension-to-media-type mappings (TypeForExt) - Extension-to-MIME mappings (MIMETypeForExt) - Supported extension checks (IsSupportedExt, IsImageExt, IsCoverImageExt) Replace duplicated logic across: - internal/service/service.go (supportedExtensions, guessMediaType) - internal/scanner/scanner.go (mediaExtensions, imageExtensions, mediaTypeFromExt) - internal/api/handlers.go (probe.MimeTypeForFilename) - internal/probe/probe.go (imageExtensions, isImagePath) - internal/probe/remux.go (MimeTypeForFilename) Divergent defaults unified: both scanner and service now default unknown extensions to video (model.MediaTypeVideo) via mediatype.TypeForExt. Update tests to use mediatype package and remove obsolete scanner tests. Update AGENTS.md to reflect the new package.
2026-05-03test: raise coverage above 60% in cmd/mediaplayer, model, and probePaul Buetow
- cmd/mediaplayer: add runWithSignal injection point for testing; cover version flag, invalid flags, invalid config, normal shutdown, all log levels, invalid DB, and privileged-port bind failure. Refactor run() to delegate to runWithSignal with optional signal channel. - internal/config: allow PORT=0 (ephemeral) to support test server startup. Update AGENTS.md validation docs accordingly. - internal/model: add comprehensive ScanProgress tests (Start, Done, IncrementFile/Set, SetCurrentSet/FilesTotal, Copy isolation, and concurrent access). - internal/probe: add image tests for isImagePath (all extensions and case insensitivity), real EXIF extraction via ImageMagick + exiv2, Probe against real JPEG, MP4, empty file, and nonexistent paths. - internal/config_test: replace PORT=0 invalid-value test with PORT=-1.
2026-05-01add readme and so onPaul Buetow
2026-05-01Minimalist UI: hide all elements until activated; add help modal and ↵Paul Buetow
keyboard shortcuts - Redesign UI to be invisible by default: only header + '?' button shown - Press m to show sidebar, t for toolbar, / for search, ? for help - Add help modal with all keyboard shortcuts - Fix scanner to skip corrupt/unprobeable files instead of aborting - Fix scanner to skip thumbnail errors instead of aborting - Fix rescan to use background context so it completes after HTTP response - Rename project from KISS Media Player to Player
2026-04-30task oa: Add SECURE_COOKIES config to control session cookie Secure flagPaul Buetow
- Add SecureCookies bool to internal.Config (default true) - Update LoadConfig in internal/config.go to parse SECURE_COOKIES env var - Update setSessionCookie and clearSessionCookie in internal/api/handlers.go to read cfg.SecureCookies - Add tests verifying Secure=true/false and logout clears cookie accordingly - Update AGENTS.md and PLAN.md with new option documentation
2026-04-29docs: create AGENTS.md documentationPaul Buetow