| Batch | Status | Escopo | Alvo de validação | Observações |
|---|---|---|---|---|
| BATCH-018 | complete | Tipo Publicador, Correções no Menus e Módulo de Galerias (req-018) | VALIDATION-CHECKLIST.md#batch-018 | Adição do tipo 'publicador' e correções no menus, mais criação do novo módulo 'galleries' com seleção em lote e reordenação Sortable.js |
| BATCH-019 | complete | Correções no Menus e Lógica do Módulo de Galerias (req-019) | VALIDATION-CHECKLIST.md#batch-019 | Target [[item#target]] + bloco item-separator nos 12 templates de menu; ajustes visuais (gap-8, hamburguer por botão, footer-colunas clicável, dropdown hover fallback); menus.widget.js/galleries.widget.js públicos (hambúrguer, hover, carrossel/slider com setas/dots/autoplay); galerias com controles show_arrows/show_dots/autoplay/autoplay_speed/loop, resolução caminho>imgSrc, blocos controls-arrows/controls-dots/dot-item e variáveis globais; alvo/modo de IA galleries + prompts galleries.md/menus.md. Ver DEC-027..DEC-031. Validação estática + teste de unidade 27/27 OK; deploy/validação runtime pendente com o operador |
| BATCH-020 | complete | Integração do Tailwind CSS CLI no Core do Sistema e Pipeline de Release (req-020) | VALIDATION-CHECKLIST.md#batch-020 | Compilação Tailwind CSS CLI em synchronize-manager.sh, sync-core-to-project.sh e no pipeline GitHub Actions release-gestor.yml. Implementado e validado em 2026-06-08. |
| BATCH-021 | complete | Preparação de Lançamento da Versão 2.8.0 (req-021) | VALIDATION-CHECKLIST.md#batch-021 | Correção do bug de HTML no publisher-pages, botão 'Adicionar todos os campos' no publisher e assets/documentação do v2.8.0. Ver DEC-034. Validação estática (node --check) OK; recompilação das páginas (Update => Core) e validação runtime pendentes com o operador. Fechado em 2026-06-08. |
| BATCH-022 | complete | Pré-visualizador de HTML Externo Unificado (req-022) | VALIDATION-CHECKLIST.md#batch-022 | Implementado e validado estaticamente em 2026-06-09; validação runtime em Docker pendente com o operador. |
| BATCH-023 | complete | Otimização de CSS Automático com Filtragem de Redundâncias (req-023) | VALIDATION-CHECKLIST.md#batch-023 | Filtragem de regras duplicadas do Tailwind CDN no frontend (updateCSSCompiled em html-editor-interface.js) para diminuir o CSS compilado inline. Ver DEC-036. Validação estática (node --check) OK; validação runtime no navegador pendente com o operador. |
| BATCH-024 | complete | Links Dinâmicos em Galerias, Controles de Exibição e Correções de Layout (req-024) | VALIDATION-CHECKLIST.md#batch-024 | Links individuais por imagem (página/custom/css/publicador) com painel "Configurar Link" e resolução no widget; altura e margem lateral globais; espaçamento das tags no publisher-highlights; padding dos submenus no menus-horizontal-navbar; legenda do masonry. Ver DEC-037. Validação estática (node --check / php -l) OK; deploy/validação runtime pendentes com o operador. Fechado em 2026-06-10. |
| BATCH-025 | complete | Autocomplete de Páginas em Galerias, Ajuste do Menu Horizontal e Preparação Final de Release (req-025) | VALIDATION-CHECKLIST.md#batch-025 | Autocomplete AJAX de páginas na curadoria de galerias (isolado por imagem), correção de links inativos (pointer-events-none cursor-default), setinha alinhada nos submenus do navbar (flex/space-between), thumbnails ampliados (200×140), e atualização de changelogs/READMEs/workflow de release (v2.8.0 → 2026-06-10). Ver DEC-038. Validação estática (node --check / php -l) OK; deploy/validação runtime pendentes com o operador. Fechado em 2026-06-10. |
| BATCH-026 | complete | Ajuste do Modo de IA de Destaques e Preservação de Template Modificado (req-026) | VALIDATION-CHECKLIST.md#batch-026 | Prompts de IA de Destaques (bloco no-item + variáveis adicionais) e Galerias (variáveis de link + regra obrigatória de âncora <a>); preservação de HTML/CSS customizado em edição/clonagem nos 3 módulos (menus/galleries/publisher-highlights) via opção [id]-modificado no dropdown + cache JS e limpeza do sufixo no submit. Ver DEC-039. Fechado em 2026-06-10. |
| BATCH-027 | complete | Resolução de Framework CSS e Variáveis de Destaques de Modelo Modificado (req-027) | VALIDATION-CHECKLIST.md#batch-027 | Slice corretivo do BATCH-026: data-framework (do framework_css da tabela templates) nas options de menus.php/galleries.php/publisher-highlights.php + helper syncFrameworkFromTemplate() no ready/change dos 3 JS para inicializar gestor.html_editor.framework_css síncronamente; e extractVariablesFromHtml() (regex client-side [[item#X]] → {id}) no publisher-highlights.js para popular o mapeamento em registros -modificado. Ver DEC-040. Validação estática (node --check / php -l) OK; deploy/validação runtime pendentes com o operador. Fechado em 2026-06-10. |
| BATCH-028 | complete | Persistência de Estilos de Widgets e Novo Módulo Publicador Índice (req-028) | VALIDATION-CHECKLIST.md#batch-028 | Persistência de css_compiled/html_extra_head nos 3 módulos (migrações + CRUD adicionar/editar/clonar com backup), helper gestor_pagina_recursos_incluir() (dedup MD5) em bibliotecas/gestor.php + refator de gestor_componente() e dos 3 widgets, e novo módulo publisher-index (Publicador Índice) com paginação/busca/ordenação AJAX via ajaxWidgets + "Carregar Mais", templates lista/grid e modo de IA. Ver DEC-041. Validação estática (php -l / node --check / json) OK; testes de unidade 23/23 (widget) + 8/8 (helper dedup) OK; deploy (Update => Core) e validação runtime pendentes com o operador. Fechado em 2026-06-11. |
| BATCH-029 | complete | Reestruturação e Otimização de Dados e Sincronização (req-029) | VALIDATION-CHECKLIST.md#batch-029 | Migração linguagem_codigo→language na tabela variaveis (única que ainda usava; as 7 do req §1 já estavam em language — ver DEC-042) com migração corretiva idempotente; metadados de sincronização declarativos via bloco tabela.config/deletar em 13 módulos + tables_config.json global (4 tabelas sem dono); gerador consolida o contrato schema-metadata.json (17 tabelas) por Registry Pattern + data-hooks.php + saneamento de @; atualizador lê o contrato (remove $preserveMap/$tabelasChaveNatural/$tabelasInsertOnly), chave natural genérica, WHERE genérico, loteador threshold-based (max_allowed_packet, fallback 16MB), deleção imperativa e transações PDO; logs unificados (log_unificado+EXTERNAL_LOGGER, parte feita por outro agente), api.php retorna db_logs/full_log, atualizacoes-sistema.php inline com prefixo [BANCO] e remoção do exec() de banco. Ver DEC-042. Validação estática (php -l 11/11, json 34/34) OK + testes de unidade (naturalKeyGenerica/batching/schemaMetadata) OK; deploy (Update => Core) e validação runtime em MySQL pendentes com o operador. Fechado em 2026-06-12. |
| BATCH-030 | complete | Autenticação Multi-Método, 2FA (App/E-mail), Social Login e Rotação JWT (req-030) | VALIDATION-CHECKLIST.md#batch-030 | 6 slices implementados, validados e commitados. |
| BATCH-031 | complete | Estruturação de Framework de Testes Unitários e E2E | VALIDATION-CHECKLIST.md#batch-031 | Criação da pasta tests/ na raiz do repositório, configuração do PHPUnit (PHP), Vitest (JS) e Playwright (E2E) para automatizar a validação de novos recursos. Fechado em 2026-06-12. |
| BATCH-032 | complete | Login sem Senha por E-mail e Auxílio de Configuração OAuth (req-032) | VALIDATION-CHECKLIST.md#batch-032 | Adição de login por código OTP via e-mail sem senha e melhoria da UI do admin-environment com guias OAuth. |
| BATCH-033 | complete | Segurança no Acesso e Geração de Chaves de API (req-033) | VALIDATION-CHECKLIST.md#batch-033 | Nova aba API no admin-environment, controle de perfis autorizados, toggles login/2FA e interceptador 2FA na rota de API. |
| BATCH-034 | complete | Aprimoramento do Editor HTML Visual (req-034) | VALIDATION-CHECKLIST.md#batch-034 | Tags editáveis permissivas, duplo overlay (hover/seleção), toolbar flutuante (drag/dup/edit/del), DnD com placeholder, inclusão de elementos/widgets (AJAX html-editor-widgets-list), undo/redo (undoLimit=30), breadcrumb, Tailwind styler, alças de resize e wrappers virtuais de widget. Lógica da janela pai isolada no novo html-editor-visual-controls.js. Ver DEC-047/DEC-048. Validação estática (php -l / node --check / JSON) OK; deploy/validação runtime pendentes com o operador. Fechado em 2026-06-13. |
| BATCH-035 | complete | Refinamentos e Ajustes no Editor HTML Visual (req-035) | VALIDATION-CHECKLIST.md#batch-035 | Toolbar flutuante ancorada à direita; novo seletor de filhos (#html-editor-selection-children) com label, separador | e fundo contrastante; labels "Ancestrais:"/"Filhos:"; empilhamento vertical dinâmico (ancestrais→filhos→styler) e hover roxo tracejado (#html-editor-breadcrumb-hover-overlay) nos breadcrumbs. Ver DEC-049. Validação estática (node --check) OK; deploy/runtime pendentes com o operador. Fechado em 2026-06-13. |
| BATCH-036 | complete | Copiar/Colar e Embrulhar Elementos no Editor Visual (req-036) | VALIDATION-CHECKLIST.md#batch-036 | Clipboard interno (clipboardElement) com botões Copiar/Colar (.he-tb-copy/.he-tb-paste, Colar oculto até haver clipboard) e atalhos Ctrl+C/Ctrl+V inserindo como irmão inferior do alvo; botão Embrulhar (.he-tb-wrap) com popup #html-editor-wrap-menu (div/section/a/p/article/aside) aninhando o selecionado e preservando o foco no filho. Tudo em html-editor.js + atalhos no html-editor-visual-controls.js. Ver DEC-050. Validação estática (node --check) OK; deploy/runtime pendentes com o operador. Fechado em 2026-06-13. |
| BATCH-037 | complete | Painel Auxiliar de Formatação Visual (req-037) | VALIDATION-CHECKLIST.md#batch-037 | Styler em duas colunas (.he-styler-cols) com painel visual (.he-styler-col-right): grupos de alinhamento/padding/bordas + paletas circulares de cor texto/fundo, mutuamente exclusivos com limpeza por lista+regex; sincronização bi-direcional (syncHelperButtons) com destaque de padrão; empilhamento responsivo .he-styler-stacked (<400px). Tudo em html-editor.js. Ver DEC-051. Validação estática (node --check) OK; deploy/runtime pendentes com o operador. Fechado em 2026-06-13. |
| BATCH-038 | complete | Inversão e Expansão do Painel Auxiliar de Formatação Visual (req-038) | VALIDATION-CHECKLIST.md#batch-038 | Colunas do styler invertidas (visual à esquerda, tags à direita) + deslocamento dos painéis quando a toolbar fica embaixo; painel expandido para 20 grupos em 4 seções (Texto/Layout/Caixa/Aparência) — inclui font-size/weight, margin, border-width/color, opacity, display + extras (caixa, decoração, flex dir/justify/items/gap, largura, sombra); applyHelperClass with cleanList+regex e syncHelperButtons genérico. Tudo em html-editor.js. Ver DEC-052. Validação estática (node --check) OK; deploy/runtime pendentes com o operador. Fechado em 2026-06-13. |
| BATCH-039 | complete | Melhorias e Aprimoramentos do Editor HTML Visual (req-039) | VALIDATION-CHECKLIST.md#batch-039 | Seção "Fundo" (cor migrada + imagem via ImagePicker + repeat/size/position), botão "Deselecionar" + toggle de clique, scroll vertical preservado no Undo/Redo, breadcrumbs com wrapping + clamp horizontal, ghost element seguidor de cursor no insert, highlight amarelo de 4 lados para contêiner alvo (append), e renderização de esqueleto de widgets via endpoint html-editor-widget-render (PHP widgets_get) + ponte AJAX pai↔iframe. Ver DEC-053. Validação estática (php -l / node --check) OK; deploy/runtime pendentes com o operador. Fechado em 2026-06-14. |
| BATCH-040 | complete | Ajustes Finais no Pré-visualizador de Widgets e Elemento Fantasma do Cursor (req-040) | VALIDATION-CHECKLIST.md#batch-040 | Render real e dinâmico dos widgets no pré-visualizador da página (#iframe-visualizacao-pagina) via widgetPreviewBootstrap injetado em previewHtmlConteudo (varre comentários → AJAX html-editor-widget-render); e ghost do cursor (#html-editor-insert-ghost) exibindo o elemento/widget REAL (buildElement/buildWidgetWrapper + requestWidgetRender) num contêiner flutuante limpo. Ver DEC-054. Validação estática (node --check) OK; deploy/runtime pendentes com o operador. Fechado em 2026-06-14. |
| BATCH-041 | complete | Correções no Módulo publisher-index (Busca, Acentuação, Duplicações, CRUD e Métricas) (req-041) | VALIDATION-CHECKLIST.md#batch-041 | Busca acentuada (escape Unicode disjuntivo) + decodificação Unicode corrompido no widget, INNER JOIN removendo a página de índice/duplicados, métricas 'Exibindo X de Y' ([[page_count]]/[[page_total]] + total no AJAX + atualização JS), remoção do #count (CRUD + JS), rule/order_by em 8 colunas, #manual-items-wrapper movido para a Regra de Curadoria + typo corrigido, e integração do alvo publisher-index no editor HTML visual. Bônus do Chefe: 2 novos modelos (publisher-index-timeline/-agenda pt-br/en). Ver DEC-055. Validação estática (php -l / node --check / JSON) OK; deploy (Update => Core) e validação runtime pendentes com o operador. Fechado em 2026-06-15. |
| BATCH-042 | complete | Controle de Métricas no publisher-index e Suíte de Testes (req-042) | VALIDATION-CHECKLIST.md#batch-042 | Toggle show_metrics no fields_schema, CRUD (adicionar/editar/clonar pt-br/en), JS administrativo, renderer PHP e templates físicos com delimitadores metrics; testes PHPUnit para helpers Unicode, métricas globais e integração MySQL gated contra conn2flow_test. Validação estática + composer test + teste MySQL dedicado OK; deploy/validação manual runtime pendentes com o operador. Ver DEC-056. |
| BATCH-043 | complete | Curadoria Manual no publisher-index, Novos Templates, Variáveis de Widget Inline e URL Raiz para Imagens (req-043) | VALIDATION-CHECKLIST.md#batch-043 | Regra manual no publisher-index (SQL IN + ordenação/busca/slice em PHP via lista_manual), 4 novos templates com imagem destaque (grid-imagem/lista-imagem pt-br/en), aba de Código do Widget reformulada nos 4 módulos (Variável do Widget [[widgets#...]] + input readonly + botão copiar + header Código HTML), suporte a renderização/edição de widgets inline convertendo [[widgets#...]]→comentários no editor e pré-visualizador, correção colateral de stubs jQuery (.children/.not) no Vitest, e prefixagem dinâmica da URL raiz em campos customizados do tipo 'image'. Ver DEC-057/DEC-058. Fechado e enviado em 2026-06-15. |
| BATCH-044 | complete | Correção de Caracteres Especiais nos Widgets, Suporte AJAX no Preview e Refatoração de Módulos (req-044) | VALIDATION-CHECKLIST.md#batch-044 | widgetsMap/widgetCounter por IDs limpos (data-widget-id) com assinatura só em memória (sem ->/aspas no DOM); diferenciação variável (widgets-var#) vs comentário na carga + unescape de entidades (incl. duplo escape) no editor e no widgetPreviewBootstrap; save reconstrói variável→[[widgets#…]] (via token, sem re-escape) e comentário→<!-- widgets#… -->; inclusão automática desduplicada de *.widget.js no <head> do preview + window.gestor.widgetsToAjax (assinaturas <#;>) replicado no iframe; extração das 26 simulações de módulo para novo html-editor-modules.js (carregado antes do interface; deps expostas no window). Ver DEC-059. Validação estática (node --check 5 JS / php -l) + Vitest 3/3 + PHPUnit 40/40 OK; deploy/runtime pendentes com o operador. Fechado em 2026-06-16. |
| BATCH-045 | complete | Correção de Erros de Inicialização (Temporal Dead Zone — TDZ) no Editor HTML Visual (req-045) | VALIDATION-CHECKLIST.md#batch-045 | Slice corretivo do BATCH-044. Causa-raiz: const WIDGET_SCRIPT_MODULES/let total_sessoes no meio do $(document).ready lidas por código de init que roda antes (TDZ → ReferenceError que aborta a init). Dois gatilhos, não um: o req-045 atribuía só ao contentPageTabHandler(), mas o runtime mostrou que o gatilho principal é o onLoad disparado SÍNCRONAMENTE pelo Fomantic ao inicializar $('.menuContainerPagina .item').tab({...}). Correção: mover AMBOS (a init do .tab() e o contentPageTabHandler()) para o fim do ready, após todas as declarações. Refatoração do BATCH-044 (modules.js) descartada como causa por evidência (grep). Inclui correção colateral correlata em html-editor.js: convertWidgetCommentsToWrappers reescrevia document.body.innerHTML para converter widgets-variável, destruindo os overlays/toolbar do editor (seleção quebrava só com widget em formato de variável) → nova convertWidgetVariablesToComments() cirúrgica via text nodes. versao da lib html-editor bumpada pelo operador (1.3.x, cache-bust). Ver DEC-060. Validação estática (node --check) OK; runtime (console sem erros) pendente com o operador. Fechado em 2026-06-16. |
| BATCH-049 | complete | Refatoração dinâmica do módulo Forms com CRUD visual de campos, html-editor e widget público (req-049) | VALIDATION-CHECKLIST.md#batch-049 | Migração forms para HTML/CSS criada, CRUD administrativo e abas configuradas, integração ao html-editor concluída com IA/simulação e renderização pública operacional. Fechado em 2026-06-22. |
| BATCH-050 | complete | Parâmetro de escape HTML, correção de abas aninhadas e novos templates no módulo Forms (req-050) | VALIDATION-CHECKLIST.md#batch-050 | html_specialchars no html-editor active para Forms, abas aninhadas isoladas por context, 8 novos templates Tailwind registrados e recursos recompilados. Validações PHP/JS, compilador, PHPUnit e Vitest OK; runtime manual pendente. |
| BATCH-051 | complete | Escape HTML global no editor, opções value/label e tipos radio/checkbox no Forms (req-051) | VALIDATION-CHECKLIST.md#batch-051 | Escape automático por presença de html/html_extra_head; Forms sem html_specialchars; renderer aceita :/|, radio e checkbox; CRUD mostra opções condicionalmente; 10 templates atualizados e recursos recompilados. Validações PHP/JS, compilador, PHPUnit e Vitest OK; runtime manual pendente. |
| BATCH-052 | complete | Disponibilidade do Menu com Visibilidade Condicional no Módulo Menus (req-052) | VALIDATION-CHECKLIST.md#batch-052 | CRUD de Disponibilidade do Menu (visível a todos / condicional), abas de condições (público / logado / perfil_usuario), delimitadores de modelo (menu-visible / menu-conditional-SLUG) e renderizador dinâmico no widget integrado a gestor_usuario(). Fechado em 2026-06-22. |
| BATCH-053 | complete | Ajustes e Melhorias na Disponibilidade Dinâmica de Menus Condicionais (req-053) | VALIDATION-CHECKLIST.md#batch-053 | Duplicação de blocos HTML no CodeMirror ao adicionar condições, sincronização do live preview com aba/condição ativa e autocomplete multi-seleção de perfis de usuários (usuarios_perfis) para a condição de perfil de usuário. Fechado em 2026-06-22. |
Navegação das docs
SDD