Visualizar Música — Tarefas
Gerado pelo Writer (Reversa) em 2026-05-11
Pré-requisitos
- [ ]
carregarMusicathunk implementado (vermusicas/tasks.mdT-07) - [ ]
MusicasFavoritasRepository.marcarAsVisualizadadisponível - [ ]
RepertoriosRepository.addItemdisponível - [ ]
react-native-keep-awakeinstalado
Tarefas
- [ ] T-01 — Implementar
MusicasRepository.findByIdcom JOIN de índices e mídias - Origem:
src/repository/musicas/MusicasRepository.ts—findById - Critério de pronto: retorna
InformacoesDetalhadasMusicacomindices[]corretos; música sem livro retornaindices: [] -
Confiança: 🟢
-
[ ] T-02 — Implementar lógica de cache no thunk
carregarMusica - Origem:
src/store/Musicas/Musicas.action.ts - Critério de pronto: segunda chamada para mesmo
id_musicanão disparafindById -
Confiança: 🟢
-
[ ] T-03 — Integrar Keep Awake na tela de letra (mount/unmount)
- Origem: commits
fix: keep awake - Critério de pronto:
activateKeepAwakeno mount;deactivateKeepAwakeno unmount; testado via back gesture e navigation replace -
Confiança: 🟢
-
[ ] T-04 — Implementar side effect
marcarMusicaComoVisualizadacomo fire-and-forget - Origem:
src/store/Musicas/Musicas.action.ts—marcarMusicaComoVisualizada - Critério de pronto: não bloqueia render da tela; música aparece em "Visto recentemente" após visualização
-
Confiança: 🟢
-
[ ] T-05 — Implementar fallback
YouTube→YouTubes[0]no componente de player - Origem:
src/model/Musica.ts—Midias - Critério de pronto: música com apenas
YouTube(deprecated) exibe player corretamente -
Confiança: 🟡
-
[ ] T-06 — Renderizar seção de índices por livro (ocultar se
indices: []) - Origem:
src/model/IndiceMusica.ts - Critério de pronto: músicas com índices exibem todos os livros; músicas sem índice não exibem a seção
- Confiança: 🟢
Tarefas de Teste
- [ ] TT-01 — Teste de cache: spy em
findByIdconfirma que segunda chamada não executa - [ ] TT-02 — Teste de side effect:
marcarAsVisualizadachamado apóscarregarMusica - [ ] TT-03 — Teste de fallback YouTube:
midias.YouTubesvazio +midias.YouTubepreenchido → player exibe vídeo
Lacunas Pendentes (🔴)
- Confirmar cleanup do Keep Awake em todos os cenários de saída
- Identificar ponto exato de sanitização da letra de Salmo