Files
Investidor-V2/docs/investmoz/zones/baseline.md
T
nala 1106509116
tests / ci (push) Canceled after 0s
vrsao 2
2026-10-08 14:02:01 +02:00

7.0 KiB
Raw Blame History

Baseline e gate — 28/09/2026

Registo histórico da Fase 0. O proprietário autorizou depois a progressão automática; o gate de aprovação abaixo foi ultrapassado por essa instrução. Consultar implementation-status.md e validation.md para a execução e métricas actuais.

Execução e resultados

Verificação executada Resultado
PHPUnit completo em PostgreSQL/PostGIS isolado 138 testes, 1.463 verificações, todos aprovados; 27,943 s
PHPStan completo Zero erros
TypeScript --noEmit Aprovado
Lint páginas investment/portfolio e PortalNavigation Aprovado
Pint do script de inventário Primeira verificação encontrou estilo; formatado; verificação final aprovada, assim como php -l
Build Vite Aprovado, 2.354 módulos, 11,78 s; aviso de dependência opcional fontaine, sem falha
Inventário agregado Executado em transacção READ ONLY/REPEATABLE READ; 93 tabelas; JSON adjacente
Backup da base SHA-256 conferido; manifesto regista restauro verificado em 93 tabelas

Backup privado da base: storage/app/private/portfolio-version-backup-20260928-011346/. O backup antecede a migration de versão editorial; a reconciliação existente documenta apenas migrations 34→35. Backup completo anterior da aplicação: C:/laragon/backups/portal-investidor-20260927-101224/RESTAURO.md. Não publicar estes backups nem as configurações privadas. Esta fase não fez alterações de esquema ou conteúdo de negócio.

As versões instaladas foram lidas de composer.lock e dos pacotes em node_modules; as versões PostgreSQL/PostGIS foram consultadas na base local. O JSON contém contagens, nunca registos pessoais ou credenciais.

Comandos reproduzíveis (PowerShell)

$validationPhp = 'C:/Users/macbook/AppData/Local/Temp/investmoz-validation-20260924/php/php.exe'
& $validationPhp tools/zones-baseline.php
& $validationPhp vendor/bin/phpstan analyse --no-progress --memory-limit=512M
& $validationPhp vendor/bin/pint --test tools/zones-baseline.php
node node_modules/typescript/bin/tsc --noEmit
node_modules/.bin/vp.cmd lint resources/js/pages/investment resources/js/pages/portfolio resources/js/components/PortalNavigation.tsx

Em outra sessão, exclusivamente para testes, com PostgreSQL QA disponível na porta 55441:

$validationPhp = 'C:/Users/macbook/AppData/Local/Temp/investmoz-validation-20260924/php/php.exe'
$env:DB_CONNECTION='pgsql'
$env:DB_DATABASE='portal_services_test'
$env:DB_HOST='127.0.0.1'
$env:DB_PORT='55441'
$env:DB_USERNAME='education_test'
$env:DB_URL=''
& $validationPhp vendor/bin/phpunit --do-not-cache-result

Depois de terminar PHPUnit, executar npm.cmd run build na sessão normal. Não substituir o manifesto Vite enquanto testes Inertia o lêem. O PHP padrão do PATH não é adequado ao baseline PostgreSQL; não executar composer setup, que altera configuração e base.

Ficheiros e reversão

Criados: tools/zones-baseline.php, docs/investmoz/zones/README.md, diagnosis-and-adr.md, plan-and-traceability.md, baseline.md, baseline-data.json. Nenhum ficheiro aplicacional removido. Build regenera artefactos derivados em public/build e ficheiros Wayfinder. Endpoints, componentes de produto e dados de negócio permanecem funcionalmente iguais; nenhuma migration criada nesta fase. Rollback da fase consiste em retirar os novos artefactos de documentação/inventário, preservando os backups; não exige rollback de base.

Não havia .git. Foi inicializado repositório local na branch feature/zee-zfi-catalogue, usando C:/laragon/bin/git/cmd/git.exe. Não há identidade Git configurada; commits não executados e nenhum ficheiro sensível adicionado ao índice. Antes de versionar a aplicação inteira, rever exclusões de anexos, dumps e storage privado. Não confundir branch sem commit inicial com histórico de recuperação completo.

Limites e riscos

  • Testes passam para o código actual; não comprovam requisitos ZEE/ZFI ainda não implementados.
  • Nenhum novo ensaio de navegador, carga, leitor de ecrã, falha de rede ou UAT foi executado nesta fase. Evidências anteriores estão em ../unification/validation.md e não são homologação do novo catálogo.
  • Ausência de geometrias impede demonstrar cobertura territorial real. Não inventar coordenadas ou perímetros.
  • Fontes jurídicas, entidades competentes, validade e nomes das zonas exigem conferência documental na Fase 1. Não foram carregadas regras fiscais ou certificados.
  • R2–R5 da revisão arquitectural continuam abertos; a Fase 0 não os resolve.
  • A aprovação editorial anterior pelo próprio gestor conflita com o novo requisito de segregação. Novo domínio seguirá revisão independente; a transição do legado precisa decisão explícita e migração de permissões.
  • SLO/SLA, retenção, responsáveis nominais e calendário de UAT não foram fornecidos. Devem ser decisões registadas, não valores inventados.

Checklist de gate

Condição Estado
Código acessível e versões/comandos identificados Sim
Backup existente com restauro documentado e checksum conferido Sim
Baseline de testes reproduzido Sim
Diagnóstico, matriz de decisões, ADR e backlog preparados Sim
Escopo piloto aprovado pelo proprietário Pendente — proposta no README
Identidade Git e primeiro commit Pendente
Transição de permissões e responsáveis de validação Pendente
Autorização para iniciar Fase 1 A aguardar decisão no gate

Recomendação: Go condicionado. Próxima fase proposta: ER/dicionário, matriz jurídica, identidade canónica e relações tipadas, migrations aditivas e testes GIS/integridade/reversão em base isolada. Não iniciada.