Skip to content

T-338 - Criar no frontend o painel de operações do auditor e a trilha do dossiê #419

Open

Description

@pedro-fs-garcia

T-338 - Criar no frontend o painel de operações do auditor e a trilha do dossiê

  • Componente: frontend.
  • Depende de: T-307 (área do auditor e dossiê), T-332 (estados do painel), T-333 (contrato) e T-334 implantada para a verificação manual.
  • Data máxima: 18/11/2026
  • Estimativa: 5 pontos (Fibonacci)

Entregável

  • Tela "Todas as operações", com filtros, contadores e a lista paginada de eventos.
  • Trilha cronológica na aba "Simulações e finalização" do dossiê.
  • Entrada do auditor passando a ser o painel.
  • Testes.

Descrição

O auditor precisa ver numa tela só o que aconteceu em todas as regras, de todos os usuários, filtrar por usuário, mês, loja, marca, cargo e regra, e ir do evento ao dossiê. Esta tarefa cria o painel "Todas as operações" sobre as rotas da T-334 e usa a mesma lista de eventos, filtrada pela regra, na trilha cronológica do dossiê.

Contexto e decisões tomadas

  • Eventos, contadores e opções dos filtros vêm prontos de GET /auditoria/eventos e GET /auditoria/eventos/filtros (T-333 e T-334). O frontend não calcula valor exibido.
  • No vocabulário do mockup, produto é marca, canal é loja e funcionário é cargo. Os filtros e a lista mostram loja, marca e cargo pelo código e o usuário pelo login. A regra é a única coisa com nome.
  • Renomear a regra não é registrado, e o evento "Edição" do mockup não existe.
  • A T-307 leva o auditor à lista de dossiês. Com o painel, a raiz passa a levá-lo ao painel.

Escopo

Dentro do escopo

  • A rota, a view e os componentes do painel na feature src/features/auditoria/, a trilha do dossiê, as chamadas no serviço da feature, a entrada do auditor em src/features/bootstrap/routes.ts e os specs.

Fora do escopo

  • src/router/index.ts e os arquivos quentes listados em frontend/AGENTS.md.

Requisitos

  1. Acrescentar ao serviço e a types.ts da feature as duas rotas, espelhando o contrato.
  2. Criar a rota /auditoria, com a restrição de papel da T-307, e o item "Todas as operações" na barra lateral. A raiz passa a levar o auditor a /auditoria.
  3. Mostrar os filtros de usuário, mês, loja, marca e cargo com as opções de GET /auditoria/eventos/filtros, e o campo de regra por nome ou id. "Aplicar filtros" consulta, e "Limpar filtros" volta ao padrão: o mês corrente no horário de Brasília, sem os outros filtros. Os filtros ficam no endereço, para que voltar do dossiê mostre o mesmo resultado.
  4. Mostrar os contadores da resposta: eventos, usuários com atividade, regras rastreadas e simulações com falha.
  5. Listar os eventos com data e hora de Brasília, login, tipo e situação do evento, nome da regra e id do job, códigos de loja, marca e cargo e o status atual do job, com 12 por página e o total.
  6. "Consultar" abre o dossiê na aba do evento: simulação, sugestão de meta e ação na aba "Simulações e finalização"; entrada, rodada e código na aba "Conversa e Python"; versão na aba "Regra e versões".
  7. Na aba "Simulações e finalização" do dossiê, mostrar a trilha cronológica com os eventos de GET /auditoria/eventos filtrados pelo id do job, do mais antigo para o mais recente.
  8. Mostrar os estados de carregamento, erro, lista vazia e acesso negado conforme a T-332.
  9. Nenhum valor é calculado. Os dados aparecem como vieram da API.
  10. Registrar as falhas das duas chamadas pelo transporte de telemetria existente, com nome de operação fixo e o código do erro, sem o texto do filtro de regra.

Contexto técnico

  • Entradas: as respostas de GET /auditoria/eventos e GET /auditoria/eventos/filtros.
  • Saídas: o painel, a trilha do dossiê e a nova entrada do auditor.
  • Componentes afetados: a feature src/features/auditoria/ e src/features/bootstrap/routes.ts.
  • Restrições: nenhuma importação de outra feature; views com até cerca de 200 linhas, com o excedente em composables; Tailwind sem CSS próprio.
  • Referências: frontend/AGENTS.md, src/features/README.md, contracts/http/openapi.yaml, frontend/src/features/historico-jobs/ como exemplo de listagem paginada.

Critérios de aceitação

  • Um auditor que abre a raiz chega ao painel.
  • Aplicar um filtro muda a lista e os contadores, e "Limpar filtros" volta ao mês corrente sem os outros filtros.
  • "Consultar" num evento de simulação abre o dossiê na aba "Simulações e finalização", e voltar ao painel mantém os filtros.
  • A trilha do dossiê mostra os eventos do job em ordem cronológica.
  • Nenhuma tela mostra rótulo de loja, marca ou cargo.

Definição de concluído (DoD)

  • make check no frontend sem falha.
  • Specs do painel, dos filtros no endereço, da paginação, do "Consultar", da trilha e da entrada do auditor.
  • Uso no navegador contra a API local com uma conta de auditor e jobs de dois usuários.
  • Emissão da telemetria das falhas conferida no navegador; a coleta ponta a ponta é informada como verificação separada.

Metadata

Metadata

Assignees

Labels

frontendtarefa que diz respeito ao frntend da aplicação

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions