From fcf0ada22701337acd4c84b404207b8400f490a2 Mon Sep 17 00:00:00 2001 From: nala Date: Mon, 2 Nov 2026 08:37:00 +0200 Subject: [PATCH] Regista aceitacao tecnica da navegacao modular SGF --- docs/MODULAR_NAVIGATION_COMPLETION.md | 4 ++ docs/MODULAR_NAVIGATION_DELIVERY.md | 28 ++++++++ docs/MODULAR_NAVIGATION_VISUAL_REVIEW.md | 4 ++ .../modular-navigation-recheck-20261102.json | 64 +++++++++++++++++++ 4 files changed, 100 insertions(+) create mode 100644 docs/proofs/modular-navigation-recheck-20261102.json diff --git a/docs/MODULAR_NAVIGATION_COMPLETION.md b/docs/MODULAR_NAVIGATION_COMPLETION.md index 614dc9d..3f88ece 100644 --- a/docs/MODULAR_NAVIGATION_COMPLETION.md +++ b/docs/MODULAR_NAVIGATION_COMPLETION.md @@ -1,7 +1,11 @@ # Navegação modular — regressão e perfis de desenvolvimento +**Aceitação técnica expressa em 02/11/2026**, registada no [relatório de entrega](MODULAR_NAVIGATION_DELIVERY.md), com autorização de checkpoint exclusivamente local e limitado à entrega. Revisão visual, associações antigas pendentes e volume/paginação permanecem separados. Não autoriza publicação, direitos públicos novos ou activação de candidatas; Compras mantém-se em **0.1.1**. + Actualização de 01/11/2026 à [entrega inicial](MODULAR_NAVIGATION_DELIVERY.md). Concluídas as duas frentes técnicas: regressão da suite existente e configuração de perfis sintéticos num ambiente de desenvolvimento separado. A [revisão visual](MODULAR_NAVIGATION_VISUAL_REVIEW.md) continua pendente e separada. +Conferência de **02/11/2026**: resultados e hashes dos JUnit confirmados; 184 ficheiros relevantes sem diferenças em relação à cópia validada; perfis e instância isolada preservados, com resposta HTTP 200. Concessões, pertenças, auditoria, guarda original e apontador de Compras conservam as impressões digitais da conclusão. Compras permanece instalado em **0.1.1**. Não se repetiram testes nem provisionamento, nem se modificaram associações ou permissões. Ver [evidência da retoma](proofs/modular-navigation-recheck-20261102.json). + ## Isolamento e preservação Foi criado um cluster PostgreSQL próprio em loopback **55439**, identificado como `sgf_modular_regression_2576427d1939`. A aplicação principal, a demonstração anterior e a sua guarda de base permanecem no destino original; não foram paradas nem migradas para este cluster. diff --git a/docs/MODULAR_NAVIGATION_DELIVERY.md b/docs/MODULAR_NAVIGATION_DELIVERY.md index db1f11b..e78bf15 100644 --- a/docs/MODULAR_NAVIGATION_DELIVERY.md +++ b/docs/MODULAR_NAVIGATION_DELIVERY.md @@ -1,5 +1,33 @@ # Navegação modular SGF — implementação local, 01/11/2026 +## Aceitação expressa e checkpoint exclusivamente local — 02/11/2026 + +O utilizador aceitou esta entrega técnica e autorizou o registo e um checkpoint Git local apenas deste incremento, sem credenciais, dados privados ou alterações alheias. A implementação já está preservada no histórico anterior; este checkpoint acrescenta a conferência, a precisão do âmbito e a aceitação, sem incorporar o trabalho paralelo de Compras. + +O âmbito aceite compreende os seis módulos identificados abaixo, Início separado e configuração geral acessível em «Opções gerais», conforme as permissões. A aceitação considera a apresentação efectivamente entregue: não declara existente uma entrada única com o rótulo «Configuração», nem transforma as capacidades em preparação em operações concluídas. + +Mantêm-se explicitamente pendentes: **revisão visual**, incluindo recarga das páginas autónomas e sem voltar à via de navegador bloqueada; **conferência humana das associações antigas**, que continuam sinalizadas e sem atribuição automática; **avaliação de volume e paginação** antes de implantação. A aceitação técnica não constitui aceitação visual, utilização real ou resolução dessas pendências. + +O checkpoint é exclusivamente local. Não autoriza publicação, push, novas concessões públicas, novas operações reais ou activação de candidatas de Compras. O pacote instalado permanece **0.1.1**. As provas válidas anteriores são reutilizadas; não houve repetição de testes por este registo documental. + +## Estado conferido em 02/11/2026 + +Identificação exacta confirmada no catálogo do servidor e na navegação: **Comercial (`commercial`), Compras (`purchasing`), Stock (`stock`), Oficinas (`workshop`), Financeiro (`finance`) e Contabilidade (`accounting`)**. Início e as opções gerais de configuração não são contados como módulos. + +**Início** está nas opções gerais, separado da navegação do módulo, inclusive quando nenhum módulo foi seleccionado. A **configuração geral** também é independente do módulo activo: Empresa e Unidades são apresentadas com `company.view`; edição/criação e consulta de cada unidade mantêm os seus direitos próprios; Acessos e Associações de módulos exigem `access.manage`, além dos direitos específicos de cada operação. As rotas gerais mantêm autenticação/contexto de empresa e autorização no servidor, sem exigir selecção de módulo. + +Precisão de apresentação: a interface actual chama a esta navegação **«Opções gerais»** e apresenta directamente Empresa, Unidades autorizadas, Associações de módulos e Acessos. **Não existe actualmente um botão ou submenu único com o rótulo «Configuração».** A Configuração documental permanece no módulo Comercial. Assim, está confirmada a separação funcional da configuração geral; uma entrada literalmente intitulada «Configuração» não pode ser declarada entregue sem ajuste de interface. Esta conferência não alterou o menu nem repetiu testes. + +As duas frentes já estão concluídas: regressão integral da suite existente (**185 testes / 3 220 asserções**) e três perfis sintéticos de desenvolvimento configurados, com descoberta dos seis módulos e autoridade separada. A suite focada actualizada tinha sido aprovada com **8 testes / 90 asserções**. O isolamento por módulo, empresa e unidade e as recusas de acesso fazem parte das provas registadas na [conclusão técnica](MODULAR_NAVIGATION_COMPLETION.md). + +A retoma comparou **184 ficheiros** de aplicação, configuração, rotas, recursos, testes e base com a cópia validada: não encontrou diferenças, além da normalização física de porta já documentada. Os hashes dos dois JUnit coincidem com os registados na entrega. Não foi necessário corrigir código, repetir testes, recriar a base ou provisionar perfis novamente. + +As impressões digitais das concessões, pertenças e auditoria da instalação, a guarda original e o apontador instalado de Compras mantêm-se iguais às da conclusão. O pacote instalado permanece **0.1.1**, sem activação de candidata. A instância isolada `http://127.0.0.1:8039` respondeu à consulta HTTP de sessão com 200; não houve autenticação nova nem utilização de navegador nesta conferência. + +Pendências que subsistem após a aceitação técnica expressa: [revisão visual separada](MODULAR_NAVIGATION_VISUAL_REVIEW.md), incluindo a recarga das páginas autónomas; conferência humana das associações antigas, que continuam sinalizadas e sem atribuição automática; avaliação de volume/paginação antes de implantação. Stock em preparação e guardas dos adaptadores de Compras continuam com os limites anteriores. Não há aceitação visual, publicação ou utilização real presumidas. + +Evidência desta retoma: [conferência de 02/11/2026](proofs/modular-navigation-recheck-20261102.json). As secções seguintes preservam o relatório da implementação inicial e os seus estados históricos; a regressão e os perfis não são tarefas por concluir. + Actualização posterior: a regressão completa e os perfis de desenvolvimento isolados foram concluídos em [MODULAR_NAVIGATION_COMPLETION.md](MODULAR_NAVIGATION_COMPLETION.md). A [revisão visual](MODULAR_NAVIGATION_VISUAL_REVIEW.md) permanece separada. As pendências dessas duas frentes descritas abaixo correspondem ao estado da entrega inicial. Implementada a selecção explícita do módulo na sessão existente, navegação própria e opções gerais separadas. A página inicial mantém o conteúdo limpo anterior. Não há aceitação visual presumida, publicação, checkpoint Git ou activação de candidatas de Compras. diff --git a/docs/MODULAR_NAVIGATION_VISUAL_REVIEW.md b/docs/MODULAR_NAVIGATION_VISUAL_REVIEW.md index 2a6dc12..b61bb97 100644 --- a/docs/MODULAR_NAVIGATION_VISUAL_REVIEW.md +++ b/docs/MODULAR_NAVIGATION_VISUAL_REVIEW.md @@ -2,6 +2,10 @@ Registo separado, 01/11/2026. A revisão visual não foi executada nem aceite. Não houve nova tentativa de controlo de navegador pela via bloqueada. +Conferência de 02/11/2026: este estado mantém-se. A retoma foi documental, de integridade das provas e de disponibilidade HTTP; não incluiu navegador, capturas ou aceitação visual. + +A aceitação técnica expressa e o checkpoint local autorizados posteriormente em 02/11/2026 não encerram esta revisão visual nem autorizam nova tentativa pela via bloqueada. + A compilação, renderização estática, testes PHP e verificações HTTP são provas técnicas; não substituem a observação da interface e a interacção da equipa. Instância isolada para revisão futura: `http://127.0.0.1:8039`, com perfis sintéticos de preparação, revisão e consulta. Não usar as credenciais ou os dados da instalação pública. O acesso local está no ficheiro privado gerado pelo procedimento de configuração, fora do repositório e da raiz pública. diff --git a/docs/proofs/modular-navigation-recheck-20261102.json b/docs/proofs/modular-navigation-recheck-20261102.json new file mode 100644 index 0000000..5577f1f --- /dev/null +++ b/docs/proofs/modular-navigation-recheck-20261102.json @@ -0,0 +1,64 @@ +{ + "date": "2026-11-02", + "scope": "Read-only recheck of completed delivery; no suites or provisioning repeated", + "prior_proof": "modular-navigation-completion.json", + "source_comparison": { + "directories": [ + "app", + "config", + "routes", + "resources", + "tests", + "database" + ], + "compared_files": 184, + "allowed_normalization": "55432 to 55439 only in staged PHP/SQL application, tests and database files", + "differences": [] + }, + "junit_hashes_match": { + "regression": true, + "focused": true + }, + "reused_results": { + "regression": { + "tests": 185, + "assertions": 3220, + "errors": 0, + "failures": 0, + "skipped": 0 + }, + "focused": { + "tests": 8, + "assertions": 90, + "errors": 0, + "failures": 0, + "skipped": 0 + }, + "profiles": 3, + "modules_per_profile": 6 + }, + "installed_preservation_since_completion": { + "permission_grants": true, + "company_memberships": true, + "identity_audit": true, + "guard": true, + "purchasing_pointer": true + }, + "purchasing": { + "installed_version": "0.1.1", + "candidate_activated": false, + "pointer_sha256": "81899e531e9eec449717e694d8bdc106a9e220a828f5491ce918c1d2dc612787" + }, + "development": { + "url": "http://127.0.0.1:8039", + "http_status": 200, + "unauthenticated": true, + "profile_guard_matches": true, + "credentials_file_present": true + }, + "tests_repeated": false, + "accounts_or_grants_created": false, + "associations_assigned": false, + "browser_control_retried": false, + "published": false +}