Claudio Ortolina
0776700170
ML-142: Improve scrobble UI in the release component
...
- Sticky bar for easier track-based scrobbling
- Support setting custom finish time
2026-04-22 17:19:35 +01:00
Claudio Ortolina
70b51b3790
ML-142: Accepted mockup and plan
2026-04-22 16:45:52 +01:00
Claudio Ortolina
1ca17d2fb3
Update dependencies
...
lumis 0.4.0 → 0.5.0
2026-04-22 16:44:50 +01:00
Claudio Ortolina
af6fed8bb7
ML-144: capture task
2026-04-22 16:41:34 +01:00
Claudio Ortolina
e75fb93694
Ignore superpowers working folder
2026-04-22 13:37:18 +01:00
Claudio Ortolina
f3bee9b679
Update to debian trixie-20260421
2026-04-22 12:32:58 +01:00
Claudio Ortolina
2a1b07b58d
Exclude more modules from coverage
2026-04-21 16:17:15 +01:00
Claudio Ortolina
28fb570c65
Update dependencies
...
live_debugger 0.7.0 => 0.8.0 (minor)
2026-04-21 15:18:23 +01:00
Claudio Ortolina
9eece7e861
Add litestream-based backup script
2026-04-21 14:47:29 +01:00
Claudio Ortolina
f81d756e3e
Improve backup script
...
- Add confirmation
- Makes backup atomic
- Sortable names
2026-04-21 14:46:24 +01:00
Claudio Ortolina
9e1b66a535
Update erlang to 28.4.3
2026-04-21 14:28:14 +01:00
Claudio Ortolina
016c4691be
Canonicalize tailwind classes
2026-04-21 14:22:41 +01:00
Claudio Ortolina
007f59b0c3
Update tailwind from 4.2.3 to 4.2.4
2026-04-21 14:16:46 +01:00
Claudio Ortolina
dd1d99a145
Fix store_embedding/3 spec to reflect float list input
2026-04-21 12:57:28 +01:00
Claudio Ortolina
30c0a961e9
Stringify format atom in get_release_status query
2026-04-21 12:57:09 +01:00
Claudio Ortolina
d22ed5e7a1
Disable dialyzer opaque checks
2026-04-21 12:53:35 +01:00
Claudio Ortolina
87522a6551
Fully qualify nested type refs in MusicBrainz.Release
2026-04-21 12:48:55 +01:00
Claudio Ortolina
c7749924fe
Spec release component private helpers
2026-04-21 12:48:36 +01:00
Claudio Ortolina
563135fcea
Remove dead nil fallback on play_count
2026-04-21 12:48:17 +01:00
Claudio Ortolina
9840690af1
Fix nil-index crash in move_record_in_set
2026-04-21 12:47:57 +01:00
Claudio Ortolina
53348a328e
Relax ScrobbleRule.t to allow unpersisted structs
2026-04-21 12:47:38 +01:00
Claudio Ortolina
87d2a8f186
Fix Maintenance vacuum/optimize return specs
2026-04-21 12:47:18 +01:00
Claudio Ortolina
40ac5bdc99
Widen Transform.new/1 spec to accept keyword list
2026-04-21 12:47:00 +01:00
Claudio Ortolina
29bfa20978
Remove unreachable error clauses in form save helpers
2026-04-21 12:46:35 +01:00
Claudio Ortolina
a93ef6d076
Install and configure dialyzer
2026-04-21 12:27:27 +01:00
Claudio Ortolina
ed4e92b1a7
Cover Ignore a few other modules
2026-04-20 23:00:44 +01:00
Claudio Ortolina
56983c3e2c
Update tailwind from 4.2.2 to 4.2.3
2026-04-20 22:47:38 +01:00
Claudio Ortolina
dc71b2ff90
Fix badge align issue in barcode scan cart
2026-04-20 16:04:20 +01:00
Claudio Ortolina
8d004d39cc
Extract shared cart sidebar component
2026-04-20 15:57:44 +01:00
Claudio Ortolina
9851a5c6bf
Use cart with barcode scanner
2026-04-20 15:46:40 +01:00
Claudio Ortolina
d47df899b7
Improve layout of add record form
...
Remove results count (I never looked at it)
2026-04-20 15:31:14 +01:00
Claudio Ortolina
fd93aaed30
Update architecture docs
2026-04-20 15:15:29 +01:00
Claudio Ortolina
7ad094d537
Complete ML-143
2026-04-20 15:15:29 +01:00
Claudio Ortolina
eaece07193
Count formats in results
2026-04-20 15:15:29 +01:00
Claudio Ortolina
c4ebe636ff
Fix ML-143 review: security, worker, and test improvements
...
Closes ML-143 review findings:
- cast_id/1 uses Integer.parse instead of String.to_integer
- add_to_cart validates against server-side release_groups
- JS.push payload trimmed to {id, format} only
- Oban.insert_all result checked for partial failures
- handle_async success resets @importing? to false
- ImportFromMusicbrainzReleaseGroup gets unique constraint
- Record.parse_datetime/1 made public with safe match
- Workers delegate to Record.parse_datetime/1
- Test coverage: change_format, clear_cart, wishlist single import
2026-04-20 15:15:29 +01:00
Claudio Ortolina
3f5ce060b1
Implement ML-143: Cart-style multi record import
...
Closes ML-143.
2026-04-20 15:15:29 +01:00
Claudio Ortolina
0ae8e69fb9
Add ML-143: Cart-style multi record import
2026-04-20 11:02:51 +01:00
Claudio Ortolina
5c32016c39
Add ML-142: Improve scrobble UI in the Release component
2026-04-20 11:02:25 +01:00
Claudio Ortolina
f3d103cf7f
Add backlog section to summary task
2026-04-20 10:11:34 +01:00
Claudio Ortolina
cbf29a22bc
Allow backlog mcp commands
2026-04-20 10:07:35 +01:00
Claudio Ortolina
f995e01ca7
Import issue history in backlog.md
2026-04-20 10:02:25 +01:00
Claudio Ortolina
78487b0085
Pin Wikipedia intro_html to fixture value
...
Map.has_key? verified the key existed but not the content. The
fixture is deterministic — assert the stored value equals
Wikipedia.Fixtures.article_extract_html/0.
Refs #176
2026-04-20 06:50:04 +01:00
Claudio Ortolina
a6319d55df
Pin artist_live/show image_data_hash assertions
...
Refs #176
2026-04-20 06:50:04 +01:00
Claudio Ortolina
07c99992a3
Pin barcode_scan release assertions
...
Refs #176
2026-04-20 06:50:04 +01:00
Claudio Ortolina
162c10e70a
Pin fetch_artist_image asset lookup
...
Refs #176
2026-04-20 06:50:04 +01:00
Claudio Ortolina
bce8560ce8
Pin fetch_artist_info stored-data assertions
...
Refs #176
2026-04-20 06:50:04 +01:00
Claudio Ortolina
1f457f0f11
Pin prune_assets test to %Asset{hash: ^hash} match
...
Refs #176
2026-04-20 06:50:04 +01:00
Claudio Ortolina
8a6c688a56
Assert parsed audit JSON structure
...
Refs #176
2026-04-20 06:50:04 +01:00
Claudio Ortolina
0eabe4b3ab
Assert import count > 0 in options-forwarding test
...
Refs #176
2026-04-20 06:50:04 +01:00
Claudio Ortolina
8ce5da65e2
Pin Brave search error body assertion
...
Refs #176
2026-04-20 06:50:04 +01:00