ios: ArtworkLoader logs nothing when an artwork candidate fails
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 72/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- swift
- Ambito
- mobile-dev, observability
Direzione di ricerca
Inizia in ios/S2/Artwork/ArtworkLoader.swift, alle righe 164–207, e traccia ogni percorso in cui un candidato restituisce nil. Aggiungi una voce os.Logger per ogni candidato non riuscito, con la chiave della cache dell’elemento, l’host del candidato e il motivo dell’errore, applicando la gestione della privacy richiesta, limitata a Debug. Verifica le convenzioni di logging iOS esistenti; il lavoro è completato quando ogni errore elencato riporta i dettagli richiesti e le chiavi degli elementi vengono sottoposte a hash fuori da Debug.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
ArtworkLoader (ios/S2/Artwork/ArtworkLoader.swift:164-207) returns nil silently for every failed candidate: non-2xx, thrown fetch, undecodable data, image under minimumSize. CFNetwork logs URLs as <private>, so a device log only shows anonymous 404s and a missing cover can't be traced to an item or a source.
Diagnosing missing artwork on the owner's iPhone (2026-11-05) took matching task ids to connections and guessing names against the API by hand.
Fix: one os.Logger line (subsystem com.simplecityapps.shuttlecasts, category Artwork) per failed candidate with the item's cache key, the candidate host, and the reason (status code / error / decode / too small with its size). Mark the item key privacy: .public in Debug only, hashed otherwise.
Impact U1 (slows diagnosis; this session spent ~20 min on it) · Reach R2 (every artwork bug report on iOS) · Implemented: no · Design fit: fits · Complexity: S
- Lingua principale
- Kotlin
- Stelle
- 233
- Fork
- 28
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di timusus/Shuttle2
-
bug impact:U2 P2 reach:R2 size:S
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
flaky
Difficoltà 4/5 1-2 giorni Idoneità per principianti 35/100
-
flaky
Difficoltà 3/5 1-2 giorni Idoneità per principianti 57/100
-
flaky
Difficoltà 4/5 1-2 giorni Idoneità per principianti 47/100
-
flaky
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Tutte le issue di timusus/Shuttle2
Issue simili
-
autoteam community connectors/destination/mssql connectors/source/hubspot team/use
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
airbytehq/airbyte#91201 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug javascript
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Source: c7 Type: bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
2.23
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
ankidroid/Anki-Android#23042 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno