Commit Graph

3392 Commits

Author SHA1 Message Date
Claudio Ortolina 1a5313cff0 Update testing docs for async helper 2026-05-16 22:35:06 +01:00
Claudio Ortolina 90ac4fa23a Extract LiveView async test helper 2026-05-16 22:27:46 +01:00
Claudio Ortolina 4fa05d6ad1 Make test wait longer due to CI performance 2026-05-16 22:16:09 +01:00
Claudio Ortolina 890edc6f9a [presto] reduce touch debounce while searching 2026-05-16 21:39:26 +01:00
Claudio Ortolina 56c0e0c8b1 [presto] Update AGENTS.md on partial updates 2026-05-16 21:32:13 +01:00
Claudio Ortolina aab16b2c66 ML-186: improve presto redraw performance with partial updates 2026-05-16 21:29:02 +01:00
Claudio Ortolina d61dd6c7b8 [presto] Update tests/references to medium cover size 2026-05-16 21:28:09 +01:00
Claudio Ortolina fb84bcb525 Update dependencies
mix:
  spitfire 0.3.11 => 0.3.12
2026-05-16 20:07:29 +01:00
Claudio Ortolina 245cb652ef [presto] Make record detail cover 400px 2026-05-16 17:48:00 +01:00
Claudio Ortolina 5212b8607e Reduce api medium cover size to 400px 2026-05-16 17:46:47 +01:00
Claudio Ortolina a7076172f5 [presto] Use placeholder cover when scrolling record detail view 2026-05-16 17:43:53 +01:00
Claudio Ortolina 9f5a26198f ML-182.4: convert tests to phoenix_test 2026-05-16 16:30:42 +01:00
Claudio Ortolina 07d65fe78f ML-182.3: finish wave-3 of conversion LiveViewTest to PhoenixTest 2026-05-16 15:23:53 +01:00
Claudio Ortolina b6f429406f Use a button for the record status picker trigger 2026-05-16 15:11:21 +01:00
Claudio Ortolina 3a7a89002a ML-185.2: use API-sized Presto covers 2026-05-15 22:56:22 +01:00
Claudio Ortolina b4710e10c8 ML-185.1: expose named cover sizes in collection API 2026-05-15 22:49:06 +01:00
Claudio Ortolina f1b33fdc5f ML-185: simplify presto artwork handling (requirements) 2026-05-15 22:41:17 +01:00
Claudio Ortolina b43edb63b0 [presto] Show larger cover in detail 2026-05-15 17:27:59 +01:00
Claudio Ortolina 2432b2bc35 Update dependencies
mix:
  ex_ast 0.11.2 => 0.12.0
2026-05-15 15:36:48 +01:00
Claudio Ortolina 733d4a2646 [presto] Center scroll indicators and fix up arrow position
Replace hardcoded WIDTH//2-px(8) with measured text centering for all scroll arrows. Move list-view up arrow Y from RECORD_START_Y-px(28) to DAY_HEADER_H+px(4) so it's inside the clip region, matching the detail view.
2026-05-15 12:04:05 +01:00
Claudio Ortolina cb1e032fc2 [presto] fix boot mode 2026-05-15 11:53:37 +01:00
Claudio Ortolina 354214b6f0 Fix search results overlapping header on scroll
Add set_clip/remove_clip to search results and day view scrollable content areas, matching the detail view pattern.
2026-05-15 11:45:12 +01:00
Claudio Ortolina 6a3e9695db ML-184: add Presto smoke test harness
Add a headless smoke-test harness for the Presto microPython app using
pimoroni-emulator mock modules.  A PRESTO_TEST_MODE=1 guard prevents
main() from running at import time so draw functions can be called
directly from tests.

- presto/main.py: wrap main() with PRESTO_TEST_MODE guard
- presto/tests/: conftest with emulator fixtures, 7 smoke tests
- presto/mise.toml: add [tasks.test]
- presto/README.md, presto/AGENTS.md: add Testing section
- .gitignore: exclude test __pycache__, pytest_cache, fixture pngs
2026-05-15 10:53:08 +01:00
Claudio Ortolina 33985cd742 [presto] Migrate to use uv-based env 2026-05-15 10:45:17 +01:00
Claudio Ortolina afb0d10bcc Enable mise monorepo tasks 2026-05-15 10:12:35 +01:00
Claudio Ortolina aa6651b19d [pi] Add shape-draft prompt template 2026-05-15 10:04:17 +01:00
Claudio Ortolina 8c19ff7406 Restructure commit hooks task draft 2026-05-15 09:56:38 +01:00
Claudio Ortolina 3775a62865 [presto] Show scrobbled albums task draft 2026-05-15 09:56:18 +01:00
Claudio Ortolina 2ec19f3a88 ML-184: presto testing harness (plan) 2026-05-15 09:54:18 +01:00
Claudio Ortolina 7338825606 ML-183: scale Presto full-res layout 2026-05-15 08:22:27 +01:00
Claudio Ortolina f6c0e9f045 [presto] fix resolution (480x480, hi-res) 2026-05-15 08:00:15 +01:00
Claudio Ortolina 2d451d2807 [presto] ignore emulator cache files 2026-05-15 07:26:17 +01:00
Claudio Ortolina 3f1908d45a [presto] lock dependencies 2026-05-15 07:26:00 +01:00
Claudio Ortolina 8391cf275a ML-180: remove backup download feature
Delete ArchiveController, its routes, the maintenance UI backup
button, and the test file. Management scripts and Litestream
supersede this functionality.
2026-05-15 07:13:33 +01:00
Claudio Ortolina 93e414cf15 ML-182: document PhoenixTest patterns and migration guide in testing skill 2026-05-15 07:07:37 +01:00
Claudio Ortolina 74b4e2524f ML-182.3; update more tests and findings 2026-05-15 07:04:04 +01:00
Claudio Ortolina 73c469e83d ML-182.3: migrate scrobble rules tests to PhoenixTest 2026-05-15 07:00:15 +01:00
Claudio Ortolina 9eda49ed46 ML-182.3: migrate record_set/show tests to PhoenixTest 2026-05-15 06:47:25 +01:00
Claudio Ortolina bd09840443 ML-182.3: convert record_set_live/index_test to PhoenixTest 2026-05-15 06:31:50 +01:00
Claudio Ortolina 9b7ed2ae8b ML-182.6: wave 6 conversion 2026-05-14 23:25:15 +01:00
Claudio Ortolina f20a7af5d7 ML-182.5: wave 5 conversion 2026-05-14 23:25:05 +01:00
Claudio Ortolina 3cb7509a4b ML-182.4: wave 4 conversion 2026-05-14 23:24:45 +01:00
Claudio Ortolina 2237c7db20 ML-182.3: partial progress in conversion 2026-05-14 23:23:15 +01:00
Claudio Ortolina dda700ad96 ML-182: convert 4 test files to PhoenixTest only
Waves 1-2: scrobble_live/index, scrobbled_tracks_live/index, release_group_show, release_show. Dropped unwrap/2 bridges and page_title/1 usage. Search form tests use visit with query params. page_title tests use assert_has("title", ...).
2026-05-14 23:22:02 +01:00
Claudio Ortolina 8843f0ad4f ML-182: migration to phoenix_test (plan) 2026-05-14 22:42:42 +01:00
Claudio Ortolina 7cf634a421 Enable NoOpenBrowser phoenix_test credo check 2026-05-14 22:37:37 +01:00
Claudio Ortolina efc9d14331 Update dependencies
mix:
  erlex 0.2.8 => 0.2.9
2026-05-14 22:04:25 +01:00
Claudio Ortolina f108e6f062 ML-174: add empty action to record set dropdown menu
Add RecordSets.empty_record_set/1 that bulk-deletes all items in a set via
a single DELETE query and returns the reloaded empty set. Add Empty button
with confirmation prompt to both index and show view dropdowns.
2026-05-14 17:15:06 +01:00
Claudio Ortolina a59dd22a18 ML-168: broadcast index_changed event after background import
Import workers now broadcast :records_index_changed on
"records:index_changed" after successful import via
Records.broadcast_index_changed/0.

CollectionLive.Index and WishlistLive.Index subscribe to the
topic in mount/3 and reload their record streams on receipt,
with a live_action guard to skip reloads when the grid is
hidden behind a modal (:import, :barcode_scan).

IndexActions.handle_index_changed/1 refreshes total_entries
before reloading to keep the pagination bar accurate.
2026-05-14 17:15:06 +01:00
Claudio Ortolina d878364423 Add mise task to run pi tests 2026-05-14 12:35:36 +01:00