Commit Graph
32 Commits
Author SHA1 Message Date
mmacierzanka dadb5f8b0e refactor: track background tasks in application lifecycle and clean up codebase
Backend / Lint i formatowanie (pull_request) Successful in 15s
Backend / Testy i kontrakt API (pull_request) Successful in 26s
Panel / Lint, typy i build (pull_request) Failing after 36s
Backend / Testowy build obrazu (pull_request) Successful in 1m34s
2026-09-13 16:58:46 +02:00
mmacierzanka 200cb48ad7 refactor: simplify effects metadata tests and remove obsolete instance checks
Panel / Lint, typy i build (pull_request) Failing after 14s
Backend / Lint i formatowanie (pull_request) Failing after 44s
Backend / Testy i kontrakt API (pull_request) Successful in 1m2s
Backend / Testowy build obrazu (pull_request) Skipped
2026-09-13 16:41:59 +02:00
mmacierzanka 55578a0463 refactor: remove description property from audio effects and UI 2026-09-13 16:37:09 +02:00
mmacierzanka f7f820691b feat: add voice channel cleanup and signal handling during application shutdown 2026-09-13 16:29:31 +02:00
mmacierzanka 210f03b0d3 feat: validate bot voice channel permissions 2026-09-13 16:14:38 +02:00
mmacierzanka 2513aa2b28 refactor: remove effect badges and clear active effects on player reset 2026-09-13 15:51:14 +02:00
mmacierzanka 51418a2d88 feat: add Robot (ring modulation) and Dźwięk z tostera (8-bit bitcrusher) player audio effects 2026-09-11 02:13:21 +02:00
mmacierzanka 39403b8238 refactor: remove legacy volume_boost references in favor of generalized player effects API 2026-09-11 01:57:26 +02:00
mmacierzanka a12b726648 feat: add player audio effects module with real-time pipeline, distortion, fourth density, and UI controls 2026-09-11 01:54:42 +02:00
mmacierzanka 3dd30804dc feat: implement volume boost functionality with signal-based multiplier and audio processing override 2026-09-11 01:46:16 +02:00
mmacierzanka 9143c6029a fix: prevent overwriting saved queue with empty track lists in repository and music player 2026-09-11 01:29:31 +02:00
mmacierzanka 708e3591ed feat: add bot restart functionality via API and Discord command 2026-09-11 01:21:26 +02:00
mmacierzanka 80470c411e fix: require voice connection to restore queue 2026-08-21 21:14:01 +02:00
mmacierzanka ca17c742c9 feat: add tooltip for progress bar seeking 2026-08-21 21:12:24 +02:00
mmacierzanka 7ef0a43693 feat: add playback seeking
Backend / Lint i formatowanie (pull_request) Successful in 4s
Backend / Testy i kontrakt API (pull_request) Successful in 4s
Backend / Testowy build obrazu (pull_request) Successful in 11s
Panel / Lint, typy i build (pull_request) Successful in 21s
2026-08-21 18:53:38 +02:00
mmacierzanka ed13d4af06 fix: advance playback after track completion
Backend / Lint i formatowanie (pull_request) Successful in 4s
Backend / Testy i kontrakt API (pull_request) Successful in 10s
Panel / Lint, typy i build (pull_request) Successful in 19s
Backend / Testowy build obrazu (pull_request) Successful in 9s
2026-08-21 18:39:57 +02:00
mmacierzanka 322087c50e fix: support long filenames in Discord autocomplete 2026-08-21 18:21:18 +02:00
mmacierzanka 90189b3f97 fix: select the requested track after queue end 2026-08-21 17:26:32 +02:00
mmacierzanka b19f3e1923 fix: preserve plays when skipping tracks 2026-08-21 17:26:02 +02:00
mmacierzanka 6736329603 fix: decrement plays after playback 2026-08-21 17:18:21 +02:00
mmacierzanka d6bd302165 feat: restore the last queue per server
Backend / Lint i formatowanie (pull_request) Successful in 3s
Backend / Testy i kontrakt API (pull_request) Successful in 10s
Panel / Lint, typy i build (pull_request) Successful in 18s
Backend / Testowy build obrazu (pull_request) Successful in 15s
2026-08-21 17:10:40 +02:00
mmacierzanka 21f3a1060c fix: validate uploaded media files
Backend / Lint i formatowanie (pull_request) Successful in 6s
Backend / Testy i kontrakt API (pull_request) Successful in 10s
Backend / Testowy build obrazu (pull_request) Successful in 10s
Panel / Lint, typy i build (pull_request) Successful in 34s
2026-08-21 16:37:41 +02:00
mmacierzanka 004641c9b8 feat: expose per-server default plays setting 2026-08-21 16:32:41 +02:00
mmacierzanka 8b340c61f0 feat: add notification channel selector 2026-08-21 16:26:30 +02:00
mmacierzanka cfe9a2fc31 fix: store playback history per Discord server 2026-08-21 16:21:57 +02:00
mmacierzanka 32fd296d9e fix: migrate legacy state to the first Discord server 2026-08-21 16:18:57 +02:00
mmacierzanka 64b428555c refactor: isolate application state per Discord server 2026-08-21 16:14:22 +02:00
mmacierzanka 384770565a refactor: consolidate frontend serving and add health check
Backend / Lint i formatowanie (pull_request) Successful in 4s
Panel / Lint, typy i build (pull_request) Successful in 4m50s
Panel / Testowy build obrazu (pull_request) Failing after 2s
Backend / Testy i kontrakt API (pull_request) Successful in 9m24s
Backend / Testowy build obrazu (pull_request) Successful in 1m38s
2026-08-21 15:29:45 +02:00
mmacierzanka fff320d3f2 Fix song counter and inconsistent queue state 2026-08-21 14:56:29 +02:00
mmacierzanka e4776d1348 Rename web to api to reflect, that it's not serving the frontend, split FastAPI creation 2026-08-21 13:31:11 +02:00
lgooseandClaude Bot 9ae22704ff test: przypięcie powierzchni API
Panel jest osobnym klientem HTTP, więc zmiana ścieżki albo metody psuje go
po cichu - w kodzie Pythona nic nie przestaje się kompilować. Test buduje
aplikację, generuje specyfikację OpenAPI i porównuje ją z listą 22
endpointów w obie strony:

- brak oczekiwanego endpointu to błąd
- nowy endpoint spoza listy również, żeby rozszerzenie API było świadomą
  decyzją, a nie skutkiem ubocznym

Sprawdzany jest też sam dokument OpenAPI, co wyłapuje błędy w deklaracjach
tras i modelach żądań.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-21 01:25:40 +02:00
lgooseandClaude Bot 0879120c85 test: regresja arytmetyki kolejki wskaźnikowej
Kolejka jest nieusuwalna, a pozycję śledzi indeks, więc przeskoki,
usuwanie i zmiana kolejności muszą ten indeks poprawnie przesuwać. To
najbardziej podatna na błędy część przeniesionego kodu, więc dostaje
testy przypinające zachowanie:

- start odtwarzania przy dodaniu do pustej kolejki
- limit odtworzeń usuwający utwór i cofający indeks
- przechodzenie dalej oraz oba tryby zapętlania
- koniec kolejki czyszczący aktualny utwór
- przeskok, usunięcie utworu przed indeksem i usunięcie odtwarzanego
- zmiana kolejności zachowująca indeks na odtwarzanym utworze
- stosowanie głośności serwera i zatrzymanie przy niedziałających utworach

16 przypadków na atrapach Discorda, bez sieci i ffmpega. Uruchamiane
przez python -m unittest discover -s tests -t . - bez nowych zależności.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-21 01:11:37 +02:00