Commit Graph

1149 Commits

Author SHA1 Message Date
Claudio Ortolina a23f772c04 Re-enable Credo CyclomaticComplexity check 2026-03-06 10:08:25 +00:00
Claudio Ortolina 7cf9b4e7f8 First pass at uniformed types, specs and docs
- spec public functions (skipping controllers, views, live views and
components)
- use types instead of explanations in docs
- remove redundant docs
- fix typos
2026-03-06 08:33:11 +00:00
Claudio Ortolina 08f7565d44 Replace inspect(reason) with friendly error messages
Closes #81
2026-03-05 20:25:13 +00:00
Claudio Ortolina 6d72df3905 Extract apply_fallback_index to shared helper
Closes #92
2026-03-05 19:50:50 +00:00
Claudio Ortolina d4376e5fa0 Extract DB queries from MaintenanceLive into context 2026-03-05 18:01:50 +00:00
Claudio Ortolina 4b1f6bb245 Fix inconsistent toast arity in form components
Closes #94
2026-03-05 17:06:23 +00:00
Claudio Ortolina eb8a00ab54 Replace String.to_integer with safe Integer.parse
Use Integer.parse/1 instead of String.to_integer/1 on user-supplied
and external API input to prevent ArgumentError crashes on non-numeric
values. Adds fallback defaults or nil returns at each call site.
2026-03-05 14:27:37 +00:00
Claudio Ortolina 23c478fe4c Mount telemetry repo in live dashboard stats 2026-03-05 13:52:55 +00:00
Claudio Ortolina f109057be5 Persist telemetry data in local sqlite database 2026-03-05 13:39:38 +00:00
Claudio Ortolina bb541c8004 Add error_tracker metrics in LiveDashboard 2026-03-05 11:48:17 +00:00
Claudio Ortolina 73a943bc63 Server records on this day email assets from a public endpoint 2026-03-05 10:50:35 +00:00
Claudio Ortolina 478832249b Send record of the day email 2026-03-05 10:37:04 +00:00
Claudio Ortolina adc7ef49e5 Add /admin to the blocked both pats 2026-03-05 09:05:09 +00:00
Claudio Ortolina 08d01e5939 Catch /xmlrpc.php bot request 2026-03-05 06:59:14 +00:00
Claudio Ortolina f9758e5566 Reject common bot scanner paths 2026-03-05 06:45:12 +00:00
Claudio Ortolina 6d451481b7 Remove obsolete color extraction strategies 2026-03-03 16:01:25 +00:00
Claudio Ortolina 1d3361c425 BETA: accurate color extractor 2026-03-03 15:41:24 +00:00
Claudio Ortolina de14ec3e25 Consolidate completely stateless tests into doctests
Removing dupes
2026-03-03 11:30:52 +00:00
Claudio Ortolina 88e09a6ad8 Handle errors when storing assets 2026-03-03 08:27:05 +00:00
Claudio Ortolina 6ef5f0a000 Add metrics to rate limiter 2026-03-02 19:23:27 +00:00
Claudio Ortolina d770640cd5 Expose release packaging information 2026-03-02 19:00:28 +00:00
Claudio Ortolina d9bb7cc630 Fix display of selected release in release summary 2026-03-02 18:55:08 +00:00
Claudio Ortolina a0df11d26f Use new style for MB link and copy button in artist page 2026-03-01 20:19:46 +00:00
Claudio Ortolina 6836cf5c9e Integrate refresh of Last.fm data (both per artist and batch) 2026-03-01 09:46:27 +00:00
Claudio Ortolina 2f57ce2e67 Display static changed banner instead of toast 2026-02-28 10:30:44 +00:00
Claudio Ortolina d5238eb35c Stabilize record detail layout 2026-02-28 09:55:47 +00:00
Claudio Ortolina 49b7c3c955 Extract common elements from record detail pages 2026-02-28 09:46:31 +00:00
Claudio Ortolina 871f4b3554 Extract ListeningStats out of ScrobbleActivity 2026-02-27 12:16:38 +00:00
Claudio Ortolina 3635e113c8 Add Error Tracker link to main menu 2026-02-26 22:07:47 +00:00
Claudio Ortolina 1b934537ea Remove Sentry and Honeybadger 2026-02-26 21:52:57 +00:00
Claudio Ortolina 18ac442b2c Install ErrorTracker 2026-02-26 21:31:37 +00:00
Claudio Ortolina 77c5453fa8 Report all errors to Honeybadger 2026-02-26 20:47:16 +00:00
Claudio Ortolina a76ae7169f Enable universal navigation 2026-02-26 15:10:40 +00:00
Claudio Ortolina be3a3bbb1c Load record sets as streams 2026-02-26 14:29:31 +00:00
Claudio Ortolina c6d778c1cd Render debug information in side sheet with highlighting 2026-02-26 11:16:55 +00:00
Claudio Ortolina 0257ea8b7c Render genres with badges 2026-02-26 10:08:08 +00:00
Claudio Ortolina b412017ed6 Show calendar icon in record detail release date 2026-02-26 10:08:08 +00:00
Claudio Ortolina bfbb74d601 BETA: new layout for record details page 2026-02-26 08:49:40 +00:00
Claudio Ortolina 956c7bfc3c Support search-style prefixes in bracketed links 2026-02-25 09:51:08 +00:00
Claudio Ortolina 0f2ace4920 Account for search errors in the add record component 2026-02-25 08:04:20 +00:00
Claudio Ortolina e9b9717b08 Inline templates inside LV modules 2026-02-24 17:20:21 +00:00
Claudio Ortolina d55e957eea Autofocus message input when opening chat 2026-02-24 16:56:13 +00:00
Claudio Ortolina 65a2305f47 Move database backup action to maintenance page 2026-02-24 16:53:44 +00:00
Claudio Ortolina e74809a59a Fix missing :warning flash messages 2026-02-24 11:06:17 +00:00
Claudio Ortolina e008171990 Disable unnecessary metrics
- Oban metrics are visible from Oban dashboard
- Scrobble metrics are not useful anymore now that scrobble rules
application is much faster
2026-02-24 10:34:32 +00:00
Claudio Ortolina 8eaaa3cfec Use custom country module to resolve flags more accurately
Ported from https://github.com/wojtekmaj/country-code-to-flag-emoji
(MIT)
2026-02-24 08:57:30 +00:00
Claudio Ortolina ec131498e7 Disambiguate records in universal search
Add purchased date
2026-02-23 19:41:12 +00:00
Claudio Ortolina e58888bbc7 Format streaming chat message to Markdown 2026-02-23 14:29:41 +00:00
Claudio Ortolina 60d81e14de Enable chat for artists 2026-02-22 15:31:09 +00:00
Claudio Ortolina b9ee7a6ce9 Load record embedding for wishlisted records 2026-02-22 15:14:38 +00:00