Livros — Tarefas de Implementação
Gerado pelo Writer (Reversa) em 2026-05-11
doc_level: detalhado
Camada: Dados
| ID |
Tarefa |
Arquivo de origem |
Critério de pronto |
Confiança |
| T-01 |
Implementar LivrosRepository.findAll() com JOIN de livro + editora + edicao_livro e extração de sigla JSON |
src/repository/LivrosRepository.ts |
Lista retorna titulo, editora, edicao, ano, sigla corretamente |
🟢 |
| T-02 |
Garantir que cantico_livro.indice suporta valores alfanuméricos (ex: "23a") |
Schema SQLite / migration |
Query de busca por índice funciona com indice = '23a' |
🟢 |
Camada: Store (Redux)
| ID |
Tarefa |
Arquivo de origem |
Critério de pronto |
Confiança |
| T-03 |
Implementar thunk carregarLivros() com store via EntityAdapter |
src/store/Livros/ |
Livros carregados no store na inicialização do app |
🟢 |
| T-04 |
Implementar action selecionarLivro(id_edicao_livro) no slice de Livros ou Músicas |
src/store/Livros/ ou Musicas/ |
Estado livroSelecionado atualizado; Músicas usa o id como filtro |
🟢 |
Camada: UI
| ID |
Tarefa |
Arquivo de origem |
Critério de pronto |
Confiança |
| T-05 |
Implementar componente de seleção de livro (dropdown/modal) exibindo sigla + título + edição |
src/view/ |
Componente exibe sigla extraída do JSON; seleção persiste no store |
🟡 |
| T-06 |
Garantir que "Todos os livros" (id=undefined) seja uma opção válida de seleção |
src/view/ + store |
Selecionar "Todos" remove o filtro de id_edicao_livro nas queries |
🟢 |
Caso de uso: selecionar-livro
| ID |
Tarefa |
Arquivo de origem |
Critério de pronto |
Confiança |
| T-07 |
Verificar que selecionar livro via UI propaga filtro corretamente ao módulo de Músicas |
src/store/Musicas/ |
findAllBy usa id_edicao_livro quando definido |
🟢 |