Commit Graph

  • 453d5df0da fix(build): put wails3 on PATH for the Taskfile supervisors yonluandClaude Opus 5 2026-08-14 22:49:16 -04:00
  • 84963e38bd docs(plan): record what Phase 6 landed and the four bugs it surfaced yonluandClaude Opus 5 2026-08-14 20:59:19 -04:00
  • deb3f3da7e feat(wails): move the e2e harness and headless launch onto v3 yonluandClaude Opus 5 2026-08-14 20:58:20 -04:00
  • 60779c41c3 docs(plan): record what Phase 5 landed and what it found yonluandClaude Opus 5 2026-08-14 19:47:05 -04:00
  • a4ada725a2 feat(wails): rebuild the Vitest fake on v3's transport seam yonluandClaude Opus 5 2026-08-14 19:46:14 -04:00
  • 04114eabae docs(plan): record what Phase 4 landed and the one error it leaves yonluandClaude Opus 5 2026-08-14 17:49:42 -04:00
  • 162c68769f feat(wails): move the frontend onto v3's generated bindings yonluandClaude Opus 5 2026-08-14 17:48:38 -04:00
  • c9905fbcff docs: drop the webkit2_41 tag from the commands agents run yonluandClaude Opus 5 2026-08-14 14:02:41 -04:00
  • 4471db3aef feat(wails): move the Go side to v3 yonluandClaude Opus 5 2026-08-14 14:01:02 -04:00
  • f47b2db308 docs(plan): record what Phase 1 landed and the two things it hit yonluandClaude Opus 5 2026-08-14 13:39:57 -04:00
  • e7873bded3 build(wails): add the v3 toolchain alongside v2 yonluandClaude Opus 5 2026-08-14 13:39:20 -04:00
  • edb13a6f39 perf(explore): ask the disk once, prefetch once, and menu the releases yonluandClaude Opus 5 2026-08-14 13:34:15 -04:00
  • 20fbf28f2a perf(explore): make the owned-artist backfill yield, mark, and stop yonluandClaude Opus 5 2026-08-14 13:33:54 -04:00
  • 878cf4b561 fix(playback): submit a durability write, do not perform it yonluandClaude Opus 5 2026-08-14 13:33:29 -04:00
  • dc890d1fcc feat(library): remove a track from the library without deleting the file yonluandClaude Opus 5 2026-08-14 13:12:01 -04:00
  • dcc40b1781 feat(albums): get an album's track total from the files, not the catalog yonluandClaude Opus 5 2026-08-13 15:40:11 -04:00
  • c94c97f604 docs: move plan 009 to completed logan 2026-08-13 15:18:22 -04:00
  • 4801ba4480 docs: close plan 009, and what a decision phase found logan 2026-08-13 15:18:17 -04:00
  • 40bc968cf8 test(e2e): a real click on the badge acts without opening the card logan 2026-08-13 15:17:14 -04:00
  • e61b7456df feat(explore): make the library badge request what it is on logan 2026-08-13 15:17:06 -04:00
  • 979c6e83ed docs: open plan 009 and record what phase 1 found logan 2026-08-13 14:14:39 -04:00
  • 48f7795687 test(e2e): pin the requested badge and the state it renders in logan 2026-08-13 14:13:46 -04:00
  • c400f681c2 fix(icons): the "Wanted" button asked for a Pro icon logan 2026-08-13 14:13:38 -04:00
  • 451b46e63c fix(explore): show a requested album as queued, not absent logan 2026-08-13 14:13:30 -04:00
  • d33dfb2264 docs: record phase 4, and the counts a new guard has to agree with logan 2026-08-13 13:30:37 -04:00
  • 41a4dd7148 feat(shortcuts): bind tracklist.delete to the confirmation logan 2026-08-13 13:28:38 -04:00
  • 6d97e3c872 feat(tracks): remove from library behind a confirmation logan 2026-08-13 13:11:31 -04:00
  • acbe7c4676 feat(library): remove tracks from the library without touching the file logan 2026-08-13 13:04:59 -04:00
  • 91bab4e73e docs: record the a11y tail, and four names written where nothing reads logan 2026-08-13 02:32:33 -04:00
  • f1c46b6a8e fix(a11y): label Explore's search box with more than a placeholder logan 2026-08-13 02:30:05 -04:00
  • 4efd17d477 fix(a11y): let the shell scroll sideways when it does not fit logan 2026-08-13 02:22:49 -04:00
  • 254646da5e fix(a11y): mark the playing row with a shape, not only a colour logan 2026-08-13 02:14:55 -04:00
  • 9d420cda0a fix(a11y): add a skip link, demote the subtitle, and size the sort arrow logan 2026-08-13 02:09:44 -04:00
  • 2b41c27616 fix(a11y): let a clipped value be read, and name a row's own buttons logan 2026-08-13 01:55:17 -04:00
  • f00d0c4655 fix(a11y): name every form control in Settings logan 2026-08-13 01:52:08 -04:00
  • b7831e3f15 fix(a11y): name the sliders and the progress bar where the role is logan 2026-08-13 01:48:43 -04:00
  • 7410109884 docs: record the semantic palette landing, and one claim that was false logan 2026-08-13 01:08:17 -04:00
  • 0b7ffd5679 build: check that css template literals were not ended by a comment logan 2026-08-13 01:07:08 -04:00
  • 49b1194333 fix(a11y): give the semantic colours a ramp, and every fill a foreground logan 2026-08-13 01:05:37 -04:00
  • fd32ce71d2 docs: record phase 2, and what a parked measurement was hiding logan 2026-08-13 00:36:09 -04:00
  • 533c084f8a fix(a11y): make every text colour clear WCAG AA on every ramp logan 2026-08-13 00:33:50 -04:00
  • 31144e5dc7 docs: record phase 1, and the state a fix lands in logan 2026-08-12 23:35:40 -04:00
  • 8af26fee94 feat(a11y): reorder the queue with Alt+Arrow logan 2026-08-12 23:34:00 -04:00
  • 6d0e46d537 fix(a11y): wire the combobox's roles to each other logan 2026-08-12 23:08:49 -04:00
  • 11b4aaef6a fix(a11y): stop the now-playing marquee under reduced motion logan 2026-08-12 22:58:56 -04:00
  • 0a0da0c19c docs: close plan 007 and open 008 on the last open audit logan 2026-08-12 22:43:10 -04:00
  • 1e4a4e6f8e docs: record phase 6, and the shelf that repeated with no ids in common logan 2026-08-12 18:19:27 -04:00
  • cad673ee3d feat(explore): open the page with shelves instead of a search box logan 2026-08-12 18:13:28 -04:00
  • 65c1b4fd53 fix(a11y): move the card grids by a row, not to the end logan 2026-08-12 17:44:22 -04:00
  • dddf54ba0c fix(a11y): make the library badge a badge, not an inert button logan 2026-08-12 17:30:33 -04:00
  • f5621bf7c5 docs: record the fourth pass, and the bugs hiding behind three findings logan 2026-08-12 15:29:59 -04:00
  • f854076d95 feat(explore): give the album page a primary action that tells the truth logan 2026-08-12 15:28:22 -04:00
  • 71324b561a feat(albums): draw the album dropdown that was already being computed logan 2026-08-12 15:10:05 -04:00
  • 287b6445fa fix(a11y): give every wa-dialog an accessible name logan 2026-08-12 14:52:23 -04:00
  • d681a7223e docs: record the audio clock, and that CI is green logan 2026-08-12 14:03:09 -04:00
  • 0a25bca128 ci(e2e): give the container an audio device that keeps time logan 2026-08-12 13:51:48 -04:00
  • 2c460bbcb7 test(download): wait for the transfers a concurrency test starts logan 2026-08-12 13:00:13 -04:00
  • 425dd7c158 docs: record the third Phase 5 pass, and read the CI log logan 2026-08-12 12:42:15 -04:00
  • bddfd37a5c feat(track-list): show Album by default, and search smart playlists logan 2026-08-12 12:38:36 -04:00
  • 1aa1598ecb feat(shortcuts): tell the key story once, and give the arrows back logan 2026-08-12 12:33:50 -04:00
  • 4615afe7f7 test(e2e): freeze Settings' and Downloads' keyboard reach logan 2026-08-12 12:17:13 -04:00
  • 5111a6c8ab ci(e2e): run the WebKit project even when chromium fails logan 2026-08-12 12:12:33 -04:00
  • 24887d6840 fix(a11y): make Settings and the Downloads tabs keyboard-reachable logan 2026-08-12 12:12:33 -04:00
  • a150b24e71 docs: say what the CI e2e failure does and does not prove logan 2026-08-12 11:57:16 -04:00
  • 63d11c3f9c docs: record the second Phase 5 pass and what it corrected logan 2026-08-12 11:44:58 -04:00
  • 862e8a0468 feat(home): land on Home, and make it worth landing on logan 2026-08-12 11:42:26 -04:00
  • c13a920487 test(e2e): freeze the context menu's keyboard model logan 2026-08-12 11:15:04 -04:00
  • a3b35a4dab fix(a11y): express the type scale in rem so text resize does something logan 2026-08-12 11:09:25 -04:00
  • 1ed4167634 feat(a11y): give the context menu a keyboard, and the app a voice logan 2026-08-12 11:07:34 -04:00
  • 7912cdf23f fix(a11y): make the five hand-rolled dialogs real dialogs logan 2026-08-12 11:07:23 -04:00
  • 9f03b3ff94 ci: enforce the commit format CLAUDE.md said was enforced logan 2026-08-12 10:44:06 -04:00
  • 3269da3e92 docs: record the first Phase 5 pass and what it corrected logan 2026-08-12 02:37:49 -04:00
  • b7dc368d7c feat(ui): give every primary view the same page header logan 2026-08-12 02:35:35 -04:00
  • cee19d7ef9 fix(settings): let a library be renamed by clicking its name logan 2026-08-12 01:47:46 -04:00
  • e9ca16362f fix(ui): make the app fit the window it enforces a minimum for logan 2026-08-12 01:44:56 -04:00
  • 9e92721bb7 docs: record plan 007, its four audits, and what measuring corrected logan 2026-08-12 01:20:13 -04:00
  • 1ac919d228 test(e2e): freeze the four reproductions this work started from logan 2026-08-12 01:20:03 -04:00
  • 5830b1ba17 test(frontend): cover the lifecycle, the voice and the repaints logan 2026-08-12 01:20:03 -04:00
  • 2518385330 refactor(frontend): adopt the lifecycle and the notification surface logan 2026-08-12 01:19:47 -04:00
  • c8bc6db9fa perf(frontend): virtualize the playlist views, and idle the closed queue logan 2026-08-12 01:19:37 -04:00
  • 559e1ed077 perf(frontend): make the lists and grids pay per row, not per library logan 2026-08-12 01:19:37 -04:00
  • 4ae6e13391 fix(player): render the position the player reports, not its own logan 2026-08-12 01:19:20 -04:00
  • 7d9e0bf2fb perf(frontend): patch the stores instead of invalidating them logan 2026-08-12 01:19:04 -04:00
  • 795f40acee perf(frontend): split the routes and warm the chunks on idle logan 2026-08-12 01:19:04 -04:00
  • 5fb9a0d246 perf(frontend): add the bound, the lookup and the lazy dialog logan 2026-08-12 01:18:48 -04:00
  • ca0f724e20 feat(frontend): bundle the icons so the app works offline logan 2026-08-12 01:18:48 -04:00
  • fbf1eff8f6 feat(frontend): give failure one voice logan 2026-08-12 01:18:34 -04:00
  • 7acb197daf feat(frontend): give a cached view a lifecycle and a keyboard owner logan 2026-08-12 01:18:34 -04:00
  • 69ad558a44 feat(shortcuts): add the autotag and track-list panel bindings logan 2026-08-12 01:18:17 -04:00
  • 9e0e4d5bb8 perf(library): resolve album and genre file paths in one query logan 2026-08-12 01:18:17 -04:00
  • 0cf710cf47 fix(playlist): create a smart playlist through the writer logan 2026-08-12 01:18:07 -04:00
  • a37acfcf84 perf(explore): emit the index status on change, not every three seconds logan 2026-08-12 01:18:07 -04:00
  • 952c25c3d3 feat(jobs): register the autotag apply, and ask before quitting logan 2026-08-12 01:18:07 -04:00
  • 1d335c5180 perf(queue): stop a finished track refetching the whole library logan 2026-08-12 01:17:54 -04:00
  • df11ef23f4 feat(player): report the real position, and skip an unplayable track logan 2026-08-12 01:17:54 -04:00
  • 55aa3ea5b0 feat(events): add the position, playback-failure and play-count events logan 2026-08-12 01:17:41 -04:00
  • fcf2fe509e fix(events): keep every line of a doc comment inside a comment logan 2026-08-12 01:17:41 -04:00
  • da564f9659 build(dev): generate a 50k-track library and measure a running app logan 2026-08-12 01:17:33 -04:00
  • 7de1b4edc1 docs: record the orientation fixes and the two new frontend fixtures logan 2026-08-11 01:15:39 -04:00
  • ff687f0bd9 feat(home): populate the home page with start-listening shelves logan 2026-08-11 01:15:34 -04:00