Conn2Flow
Navegação das docs

MDD

req-278: Atualizador do core sempre entregue

A atualização pelo painel para a 3.0.5 escreveu 1 arquivo e preservou 28 como "editados". A linha de base do manifesto do core era a da tentativa pelo painel das 14:28 (3.0.3)…


id: "REQ-278" title: "Atualizador do core sempre entregue, mesmo com manifesto desatualizado" status: "implemented-pending-homologation" date: "2026-10-15" author: "executor" target_repo: "conn2flow" batch: "BATCH-287" topology: "dupla" autonomy: "autonomo_monitorado" release: "gestor-v3.0.6"

req-278: Atualizador do core sempre entregue

1. Ocorrência (15/10/2026, 16:27, temp.conn2flow.com)

A atualização pelo painel para a 3.0.5 escreveu 1 arquivo e preservou 28 como "editados". A linha de base do manifesto do core era a da tentativa pelo painel das 14:28 (3.0.3); depois o temp foi para a 3.0.4 por SSH, que não grava o manifesto do core. Entre os preservados estava o próprio atualizador com o hotfix da req-277: a etapa de banco rodou com o código antigo e estourou a memória de novo.

Agravante: arquivo preservado entra no manifesto com o hash novo (decisão "manter" não é perguntada de novo), então uma nova tentativa da mesma versão pularia esses arquivos em silêncio.

Contorno no temp: manifesto do core retirado (installation/manifests/core.json.antes-3.0.5) e trava órfã removida; a próxima entrega vale como primeira.

Pedido do Humano: resolver no código e gerar release (sem deploy direto pelo executor).

2. Correção

Na camada core, os arquivos do atualizador — controladores/atualizacoes/, modulos/admin-atualizacoes/, bibliotecas/deploy-lock.php, bibliotecas/db-data.php, bibliotecas/instalacao-*, bibliotecas/atualizacoes-* — são sempre escritos quando a versão nova é outra, mesmo parecendo editados ou já registrados no manifesto. O snapshot da entrega guarda o anterior; o log registra "Atualizador do core escrito por cima de versão local". Sobreposição por projeto/plugin continua respeitada.

Fora do escopo (BL-034): o pipeline [REDACTED] o manifesto do core; abrir o log de tentativas com falha no histórico.

3. Aceite

  • [x] Manifesto desatualizado: atualizador novo chega; o resto editado segue preservado.

  • [x] Mesma versão reentregue com disco diferente: atualizador reescrito.

  • [x] Atualizador sobreposto pelo projeto continua do projeto; regra só na camada core.

  • [x] PHPUnit completo.

  • [ ] Release 3.0.6 e atualização do temp pelo painel até 100%.

O Futuro é Híbrido: Humano + IA.

O Conn2Flow é a ferramenta. Se você precisa do Arquiteto para desenhar a estratégia da sua empresa usando essa tecnologia...

Contrate Consultoria Especializada