Uma seção de tracklist, e por que levou 30 minutos
Um método de protocolo, um enum de estado reaproveitado, uma convenção de roteamento que se manteve, e um orçamento de lint que forçou uma divisão que valia a pena fazer de qualquer forma.
Um método de protocolo, um enum de estado reaproveitado, uma convenção de roteamento que se manteve, e um orçamento de lint que forçou uma divisão que valia a pena fazer de qualquer forma.
Medir no dispositivo encontrou um scan da biblioteca inteira rodando em cada lote do Discover - e uma armadilha de medição de 16x onde o cache HTTP favoreceu o caminho errado.
Um try? ?? [] fazia uma falha de rede parecer indistinguível de "sem lançamentos", o que deixou uma interrupção guardar em cache um feed vazio por cima de dados bons durante 24 horas.
Um filtro só era aplicado ao reabrir o app, porque uma TabView mantém os view models vivos e seu estado semeado fica congelado. A correção apagou um conceito.
CLAUDE.md serve para convenções estáveis, não para pegadinhas e lições aprendidas. Isso precisa de um cofre compartilhado único, não uma cópia por repo.
Um consumível que deveria ter sido não consumível, um product ID que você nunca pode reutilizar, um archive que silenciosamente não foi rebuildado, e um rename com um pavio de duas semanas.
Um blob no KVS com tombstones em vez de CloudKit-em-tudo, um decorator que mantém usuários free longe do iCloud por completo, e provar que a sincronização funciona com só um dispositivo.
A ação de adicionar à playlist combinava com o gesto irmão no mesmo card, e brigava com o resto do app. Escolher o ponto de referência errado para «consistente».
Uma busca de artista que falhava nunca contava como checada, então um artista ruim se reselecionava para sempre - até um teste de várias rodadas achar a segunda proteção.
Seis itens de desvio já conhecidos, dois a mais encontrados ao rodar os comandos documentados, e uma correção de nome que a memória do projeto deixou mais restrita que um find-replace.
Página 2 de 5