Statistik: PB-listan laddade inte — init-ordning i StatsViewModel + fallback mot äldre gym-API
All checks were successful
release / build-release (push) Successful in 4m22s
All checks were successful
release / build-release (push) Successful in 4m22s
- StatsViewModel: pbMode/pbs deklarerades efter init { load() } → refreshPbs()
körde på null vid första öppningen (NPE som runCatching svalde). Listan kom
först när man bytte läge/period. Deklarationerna flyttade före init.
- personalBestsDetailed: känner igen schemafel ("does not exist") från ett
äldre API och faller tillbaka på den gamla personalBests-frågan +
favoriteExercises; PbList.legacyApi styr UI:t (lägen/sök/ark avstängda,
notis om att gym-API:t behöver uppdateras).
- Fel vid PB-hämtning visas under rubriken i stället för tom lista;
LiftStatusSheet/PbSearchCard visar serverns fel i stället för "offline?".
- README: API-krav för rekordstatus, fallback, Waydroid-testflöde.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NGT3xpdm51McmSrJcHnrzq
This commit is contained in:
19
README.md
19
README.md
@@ -41,6 +41,17 @@ I VS Code: kör build-tasken (`Ctrl+Skift+B`) — den lägger APK:n i
|
||||
`build/FitnessDroid.apk`. Tasken `installera på telefon (adb)` installerar den
|
||||
direkt på en ansluten telefon med USB-felsökning på.
|
||||
|
||||
### Testa lokalt i Waydroid
|
||||
|
||||
Waydroid (x86_64, Android 13) fungerar som emulator på brasse-linux01. Sessionen startas
|
||||
med `waydroid session start` + `waydroid show-full-ui`, sedan
|
||||
`adb connect 192.168.240.112:5555` (IP:n från `waydroid status`) — första gången måste
|
||||
*Allow USB debugging* godkännas i Waydroid-fönstret. Installera med
|
||||
`adb install -r app/build/outputs/apk/debug/app-debug.apk`; skärmdumpar via
|
||||
`adb exec-out screencap -p > fil.png`, UI-koordinater via `uiautomator dump`.
|
||||
Saknar Android nät bortom värden är det Dockers FORWARD-spärr — se infra-Doc
|
||||
`hosts/brasse-linux01.md` (Waydroid-avsnittet). Testkonto: `bb01`.
|
||||
|
||||
### Testa mot API:t
|
||||
|
||||
Logga in med ditt vanliga gym-konto (LDAP). API-url:en går att ändra under
|
||||
@@ -59,6 +70,14 @@ bästa est. 1RM. Stjärnan på ett PB-kort gör övningen till **favorit** (samm
|
||||
favoriter som övningsväljaren) så att den ligger överst i PB-listan i både app och webb. "Räknas ej" tas ur rekord, 1RM och PB-höjdpunkter på servern
|
||||
(kod: `ui/common/LiftStatusSheet.kt`, API: `setLiftStatus`/`setSessionSetStatus`).
|
||||
|
||||
**Kräver gym-API:t från 2026-09-06 eller senare** (`personalBests(mode)`, `pbLookup`,
|
||||
`pbCandidates`, `liftDetail`, `setLiftStatus`). Mot ett äldre API faller appen tillbaka på
|
||||
den gamla PB-frågan: rekorden visas fortfarande (favoriter hämtas via `favoriteExercises`),
|
||||
men lägesväxeln, sökkortet och detaljarket är avstängda och en notis säger att servern
|
||||
behöver uppdateras. Fel vid hämtningen visas under rubriken i stället för att listan tyst
|
||||
blir tom. Schemafel känns igen på HotChocolates "does not exist" (`GraphQlException.isSchemaMismatch()`
|
||||
i `data/GraphQlClient.kt`).
|
||||
|
||||
## Signeringsnyckeln
|
||||
|
||||
Nyckeln är **inte** incheckad (repot är publikt). Lokalt ligger den i
|
||||
|
||||
Reference in New Issue
Block a user