-
Status:
implemented-pending-review(commitc1bfa074nafeat/req-247; relatório emsdd/implementation/BATCH-256.mdda branch) -
Modo de Autonomia:
autonomo_monitorado -
Lote Alvo Core:
BATCH-256(conn2flow) -
Data de Criação: 2026-10-06
-
Origem: pedido direto do Engenheiro Chefe no chat, em continuação às configurações por widget entregues na
integ/widget-apresentacao(REQ-246, seção 5.6). -
Repositório Alvo: Core
conn2flowem[REDACTED] -
Branch de trabalho:
feat/req-247, nascida dainteg/widget-apresentacao. Entra namaindepois da consolidação da REQ-246.
1. Pedido, nas palavras do Engenheiro Chefe
"O duplicar o widget eu achei legal. Também pode fazer abrir registro para editar. [...] nessa edição de tamanho, eu acho que poderia ser um pouco menor também na largura. A altura está perfeita. Mas a largura tem basicamente três tamanhos só. A gente podia ter mais flexibilidade de tamanhos. [...] Esses layouts salvos eu acho interessante você fazer e eu também queria que você criasse dentro do módulo dois módulos operações, um é o admin que tem permissão de edição e o outro que só tem permissão de visualização. [...] eu quero que tenha uma opção desse layout salvo ser aplicado a todos. [...] em quais perfis que vai aparecer aquele layout? E dá a opção, para se o módulo de operação for de poder editar, de mostrar esse que é o padrão, que foi definido, quanto também definir um próprio. Quem não tem permissão de edição, não aparece os botões de controle. Sobre o menu de opções, essas novas opções pode fazer. [...] eu posso fazer uma área de trabalho com widget pronto para cada perfil de usuário. Aí quem tem permissão vai poder editar os widgets. Quem não tem só vai ver, dependendo do perfil de usuário que tem."
Ficaram de fora, por decisão dele: miniatura de tela larga em card pequeno (adiada) e altura automática (recusada, confunde com o redimensionamento manual).
2. Escopo
2.1 Permissões (duas operações do módulo dashboard)
| Operação | Quem tem | O que pode |
|---|---|---|
widgets-administrar |
perfil administradores na instalação; os demais recebem pelo usuarios-perfis |
editar a área de widgets, manter layout próprio, salvar layouts e definir o layout de cada perfil |
widgets-visualizar |
concedida por perfil | ver a área de widgets com o layout definido para o perfil, sem nenhum controle de edição |
Sem nenhuma das duas, a aba de widgets não aparece. A regra vale no servidor: gravar layout, salvar e publicar exigem widgets-administrar; renderizar widget exige uma das duas.
2.2 Layout por perfil
-
Quem administra publica o layout que está na tela para um ou mais perfis, ou para todos (
*). Um perfil sem layout próprio usa o de todos. -
Quem só visualiza vê o layout do perfil.
-
Quem administra escolhe o que vê: o próprio layout ou o padrão do perfil. No padrão, o modo de edição fica desligado e há a ação de copiar o padrão para o próprio.
2.3 Layouts salvos
Quem administra guarda o arranjo atual com um nome, aplica um guardado ao próprio layout e exclui. Ficam na preferência do usuário.
2.4 Ferramentas do card e do menu
-
Duplicar widget: copia o card com tipo, registro, tamanho e configurações.
-
Abrir o registro para editar: atalho do card para a tela de edição do registro, em nova aba, quando o módulo do widget tem essa tela e o usuário tem acesso a ele.
-
Larguras: de 2 a 12 colunas da malha de 12, uma a uma, no lugar dos quatro degraus (4, 6, 8, 12). Altura inalterada.
-
Menu de opções: mostrar ou esconder todos os cabeçalhos de uma vez; tela cheia da área de widgets.
3. Critérios de aceite
-
[x] Usuário só com
widgets-visualizar: vê os widgets do perfil, sem modo de edição, sem botões de card, sem itens de edição no menu; tentativas de gravar pelo AJAX são recusadas. -
[x] Usuário com
widgets-administrar: publica layout para um perfil e para todos, alterna entre próprio e padrão, copia o padrão. -
[x] Layouts salvos: salvar, aplicar e excluir persistem depois de recarregar.
-
[x] Duplicar gera card independente; abrir registro leva à edição certa.
-
[x] Redimensionar aceita todas as larguras de 2 a 12 colunas; layouts antigos continuam válidos.
-
[x] Mostrar/esconder todos os cabeçalhos e tela cheia funcionam.
-
[x] PHPUnit e Vitest verdes; roteiro de navegador no Lab com um usuário de cada tipo; 390 px sem rolagem lateral.
-
[x] Textos novos no sistema de variáveis, nos dois idiomas.
4. Validação prevista
Testes de contrato em PHP (operações declaradas, guarda de permissão, normalização do layout publicado), Vitest para o cliente e roteiro Playwright no Lab local. Sem publicação em produção.
5. Resultado (2026-10-06)
PHPUnit 1.683 e Vitest 588 sem falhas. Roteiro de navegador no Lab 43/43 em quatro fases: administrador, usuário sem operação, usuário só com widgets-visualizar e limpeza. Ficaram para o humano: conceder a operação pela tela de perfis, tela cheia num monitor e decidir se outro perfil nasce com uma das operações. Lista em conn2flow-site/sdd/PENDENCIAS-HUMANAS.md.