Pular para o conteúdo

Changelog — página 4

Tag: 0.57.0 Data: 2026-09-15 Resumo: O bloco «Fullpage Hero» passa a ter um seletor de altura (XS, S, M, L, XL) na barra lateral do Gutenberg, com a tela do editor a acompanhar a escolha.

Dá aos editores controlo sobre a altura do bloco «Fullpage Hero». Até agora o herói era sempre de altura total: a altura tinha sido retirada do contrato do bloco por ser política visual, ficando acessível apenas a partir das páginas Astro escritas à mão. A barra lateral do Gutenberg passa a mostrar um grupo de botões XS, S, M, L e XL, e a tela do editor muda de altura com a escolha.

A altura é guardada como um passo nomeado, nunca como uma medida, à semelhança do espaçamento do bloco «Secção» — a decisão registada em docs/adr/0013-astro-owns-block-rendering.md: enumerações fechadas são conteúdo, valores CSS livres não são. O Astro continua a ser dono das unidades e do espaçamento a que cada passo corresponde, em apps/web/src/components/page-heroes/pageHeroShared.ts.

xl é a predefinição e reproduz exatamente o herói de altura total atual, pelo que todos os heróis gravados antes desta versão continuam a ser apresentados sem qualquer alteração. O nome heroHeight mantém-se retirado do contrato; a propriedade Astro com esse nome continua a aceitar as palavras full e half, que correspondem a xl e s com as medidas que já tinham, preservando as três páginas de arquivo escritas à mão.

Como o plugin do WordPress é empacotado em separado e não consegue importar o resultado do Tailwind, a tela do editor repete as medidas em CSS simples. Essa repetição passa a ser verificada em vez de confiada: um teste deriva os valores esperados a partir das classes do frontend e falha quando os dois divergem ou quando um novo passo chega sem entrada na tela. O texto de ajuda da barra lateral passa a ser construído a partir da própria lista de passos.

Validação:

  • pnpm --dir apps/web check (lint, astro check, formatação, contratos de blocos, plugin WordPress) sem erros;
  • 189 testes do frontend, 116 de workspace, 26 do plugin WordPress e 5 da documentação, sem falhas;
  • o editor do bloco foi renderizado fora do WordPress em cada um dos cinco passos, confirmando que o controlo aparece na barra lateral, que o botão correto fica ativo e que um valor desconhecido recai em xl.

Tag: 0.56.0 Data: 2026-09-15

Automatiza a publicação de versões e acrescenta verificações que ligam o estado do repositório ao estado da produção. pnpm release:fix, release:minor e release:major executam agora toda a sequência documentada em docs/release.md num único comando — entrada do changelog, sincronização das versões do produto, pnpm verify, commit, etiqueta anotada, acompanhamento do workflow no GitHub e verificações finais em produção — e podem ser retomadas sem repetir passos já concluídos.

Acrescenta ainda três verificações. pnpm wp-operations:check valida todas as consultas GraphQL do frontend contra um retrato do esquema do WPGraphQL: como as páginas são compostas a pedido, um campo removido no WordPress deixa de ser um erro de compilação e passa a ser um erro numa página publicada. pnpm test:site-smoke abre a página inicial, todos os arquivos de conteúdo e uma página de evento no site publicado e compara-os com aquilo que o WordPress publica, porque uma consulta falhada degrada para uma secção vazia em vez de um erro. pnpm cms:preflight garante que o DDEV está a correr e que a base de dados local tem conteúdo recente de produção antes de qualquer verificação que dependa do CMS.

Validação:

  • pnpm verify sem erros, incluindo builds, verificações do CMS e Playwright;
  • 106 testes de workspace, 177 do frontend, 39 de pré-visualização de blocos e 14 do site publicado, sem falhas.

Tag: 0.55.8 Data: 2026-09-14

Renomeia o bloco «Herói de página estático» para «Fullpage Hero» no editor e nas pré-visualizações. O editor passa a aplicar a classe alignfull do próprio Gutenberg (com uma regra de recurso a toda a largura para quando os estilos de layout restrito não estão presentes), pelo que o herói preenche a tela do editor da mesma forma que preenche a página publicada.

Validação:

  • pnpm --dir apps/web check:code (lint, astro check, formatação, plugin WordPress) sem erros;
  • pnpm --dir apps/web test (161 testes, sem falhas).

Tag: 0.55.7 Data: 2026-09-14

Consolida o template de página: todas as rotas passam a renderizar através de BaseLayout, que decide num único sítio o <head>, o cabeçalho fixo, o rodapé e a superfície da página (com o contraste do texto ajustado automaticamente à cor de fundo), em vez de cada rota construir o seu próprio <html>/<body>. Acrescenta suporte ao alinhamento de blocos Gutenberg — esquerda, direita, centro, largo e ecrã inteiro — através de src/lib/wp-alignment.ts e de regras dedicadas em global.css, restritas a .wp-block-image.

Acrescenta ainda o painel «Nomia Release» ao dashboard do wp-admin, que mostra aos editores a versão do produto em produção e a data em que foi publicada, sem saírem do WordPress.

Validação:

  • pnpm --dir apps/web check:code (lint, astro check, formatação, plugin WordPress) sem erros;
  • pnpm --dir apps/web test (161 testes, sem falhas).

Tag: 0.55.6 Data: 2026-09-14

Acrescenta o bloco genérico «Secção» (getquick/section), que agrupa outros blocos Gutenberg (via InnerBlocks) numa faixa com fundo e espaçamento próprios, sem precisar de um bloco dedicado para cada variação de página. A cor de fundo é guardada como valor bruto — o único caso em que este bloco o faz, já que a secção existe precisamente para definir a superfície onde os filhos assentam — e os editores escolhem a partir das amostras Nomia. O espaçamento de topo, base e laterais fica em passos nomeados (src/lib/section-block.ts), para que o ritmo responsivo continue centralizado em vez de ficar congelado no conteúdo do artigo.

Validação:

  • pnpm --dir apps/web check:code (lint, astro check, formatação, plugin WordPress) sem erros;
  • pnpm --dir apps/web test (151 testes, sem falhas).

Tag: 0.55.5 Data: 2026-09-14

Acrescenta negrito e itálico por campo à barra de tipografia do bloco «Título com etiqueta», como dois botões nativos com estado. Aplicam-se ao campo inteiro e não a uma seleção, pelo que os campos continuam a guardar texto simples e nenhuma marcação do editor chega à página. O negrito resolve para font-weight: 700 e o itálico para font-style: italic; ambos são guardados como booleanos com omissão false, pelo que um campo não alternado não serializa nada e mantém o peso e o estilo das suas classes.

A barra passa também a distinguir um valor herdado de um valor personalizado. O botão de valor mostrava a omissão dos tokens houvesse ou não personalização, pelo que subir e descer o tamanho gravava uma medida igual à omissão — visual e efetivamente indistinguível de não ter personalização — e dava a impressão de que a alteração não era aplicada. O botão passa a ter estado premido e a marcar o valor herdado, e a descrição indica qual dos dois casos está ativo.

Corrige ainda o encaminhamento das propriedades da barra para os atributos guardados, que enviava qualquer propriedade diferente de fontSize para a altura de linha.

Validação:

  • pnpm generate executado sem alterar a árvore de trabalho;
  • pnpm check e pnpm test (73, 144, 5 e 5 testes, sem falhas);
  • renderização do frontend confirmada por estilos computados para os três campos, incluindo valores hostis descartados;
  • build e lint do plugin WordPress de primeira parte.

Tag: 0.55.4 Data: 2026-09-14

Reconstrói a barra de tipografia do bloco «Título com etiqueta» a partir dos componentes nativos de barra de ferramentas do Gutenberg. Cada medida passa a ser um grupo de botões nativos — diminuir, o valor atual como menu com um controlo de intervalo para saltar diretamente, aumentar — em vez de campos de texto com estilo próprio. Os botões de passo desativam-se nos limites suportados e a reposição do controlo de intervalo limpa a medida.

A barra ganha assim a navegação por setas, os atalhos de foco e as descrições nativas da barra de ferramentas do editor. Alteração apenas do editor: sem alterações ao contrato, ao renderizador ou aos atributos guardados, pelo que o conteúdo existente e as páginas publicadas não são afetados.

Validação:

  • pnpm generate executado sem alterar a árvore de trabalho;
  • pnpm check e pnpm test (73, 143, 5 e 5 testes, sem falhas);
  • build e lint do plugin WordPress de primeira parte.

Tag: 0.55.3 Data: 2026-09-14

Introduz a via de autoria Block Runner como lane nativa de conteúdo, com planeamento e validação de conteúdo de blocos estruturados e contexto de agente gerado a partir das registações. O bloco «Título com etiqueta» passa a ter editor próprio no Gutenberg: a secção é desenhada na tela do editor e cada campo — etiqueta, primeira e segunda linha do título — recebe a sua própria barra de tipografia flutuante, com tamanho e altura de linha em pixels.

As medidas são guardadas por campo e sem valor por omissão, pelo que um campo não personalizado continua a herdar os tokens de tipo (text-body/text-h4 e alturas de linha i/f) e acompanha alterações futuras desses tokens. Valores fora dos limites suportados são descartados na renderização em vez de publicados.

Validação:

  • pnpm generate executado sem alterar a árvore de trabalho;
  • pnpm check e pnpm test (73, 143, 5 e 5 testes, sem falhas);
  • renderização do frontend confirmada por estilos computados, com e sem personalização, e com valores hostis ou fora de limites;
  • build e lint do plugin WordPress de primeira parte.

Tag: 0.55.2 Data: 2026-09-14

Corrige uma falha fatal no editor de blocos quando a chave JWT dedicada não está configurada. A autenticação passa a usar a chave WordPress existente como fallback, e falhas na geração do token de preview deixam de impedir a edição. Os logs de debug passam também a ser escritos fora da raiz pública.

Validação:

  • reprodução exata da exceção de assinatura JWT, seguida pelo teste de regressão;
  • suite Feature do CMS (32 testes);
  • lint e análise Psalm do CMS;
  • pnpm check e testes do contrato de deployment.

Tag: 0.55.1 Data: 2026-09-14

Release de correção que conclui a consolidação dos blocos Gutenberg como código de primeira parte do CMS, reforça os perfis de desenvolvimento e separa geração, verificação e deployment. A configuração Bedrock passa também a aceitar WP_DEBUG através do editor de ambiente do Ploi, mantendo a apresentação de erros no navegador desativada por omissão.

Validação:

  • pnpm generate executado duas vezes sem alterar a árvore de trabalho;
  • pnpm check, pnpm test e pnpm verify;
  • 38 testes Playwright dos previews Astro;
  • testes, lint, análise Psalm e packaging do CMS/plugin.