Files
SGF/docs/SGF_SIX_MODULE_CLOSURE_20261110.md
2026-11-11 09:00:17 +02:00

63 lines
11 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# SGF8085 — consolidação funcional dos seis módulos
10/11/2026. Uma instalação: **http://127.0.0.1:8085/sgf**, empresa/unidade QA existentes. Sem SGC, novas demonstrações, publicação ou candidata de Compras. As duas autorizações integrais de10/11 foram executadas apenas no recorte sintético aprovado. Código, interfaces e operações efectivas; esta entrega não é só documentação.
## Resultado disponível
Navegação actualizada por pedido expresso do utilizador: módulos alinhados horizontalmente, funções em dropdown por módulo, tanto na entrada como na aplicação. «Consultar» abre directamente cada percurso com um perfil já autorizado; a lista original dos17 perfis fica disponível separadamente. Não foram criados acessos ou efeitos para simplificar a entrada. O utilizador esclareceu depois que já consegue entrar; isso não presume revisão visual integral dos cinco módulos restantes ou da nova navegação.
| Módulo | Percurso na mesma8085 e evidência concreta |
|---|---|
| Comercial | Cliente/serviço associados explicitamente, cálculo/revisão, documento de teste862,07+137,93=1000MZN e PDF. Recebível da mesma origem. A oficina também gera um rascunho comercial500MZN, revisto distintamente, sem emitir automaticamente outra factura. |
| Compras | C01–C10 preservado: fornecedor → requisição → propostas/avaliações → adjudicação distinta → ordem → recepção → factura conferida → obrigação100MZN. A continuação usa a mesma dívida nativa; não foi reexecutada a aquisição aceite. |
| Stock | Livro físico único, saldos e movimentos por período; entrada2UN, saída1UN e devolução recebida0,5UN efectivas. Consumo de Oficina ligado à saída existente, sem segundo abatimento. Transferência1UN em trânsito, recebida0,4+0,6 por outra função: origem0,5UN, destino1UN, trânsito0; propriedade1,5UN/75MZN conservada. Novo artigo por lotes: entrada4UN, dois lotes2+2, identificação/retenção/libertação e contagem1,5+2; ajuste distinto−0,5UN, saldo3,5UN/70MZN. |
| Oficinas | Ordem/autorização, tarefa105min e material2UN, revisão técnica, custo275→295 por par imutável; industrial1800→1820, trabalho500/CIF300 e residual300 separado. Outro apontamento liga consumo0,5 e devolução0,5 à entrega física1UN. Continuação explícita para o rascunho Comercial500. |
| Financeiro | Recebível1000, afectações400/600 e reversão400, saldo400; obrigação original de Compras100→80→100 por afectação/reversão20. Pagamento confirmado isoladamente não abate a dívida. Consultas paginadas, comprovativos e histórico por origem. |
| Contabilidade | Mesmo livro nativo, **18 lançamentos equilibrados e15 contas QA**, plano pesquisável, diário, balancete e razão, correcções por pares, recibos/atalhos antigos ligados ao mesmo núcleo. Novos lançamentos80 e10 do artigo de lotes; transferências internas não são consumo nem dívida. Valor da conta de Stock145MZN =75+70; não somar quantidades de artigos diferentes. |
O fecho QA foi executado e recuperado com revisão distinta em transacção revertida: **18 factos, zero pendentes**. O período real da apresentação mantém-se aberto; não houve reabertura. Um movimento desconhecido fora do armazém do livro de valorização passa a pendência de fecho, não desaparece nem é classificado automaticamente como transferência interna.
## Concorrência, falhas e isolamento
O ensaio em dois processos identificou o bloqueio: a linha do utilizador QA no host é mantida até terminar a transacção nativa; depois existe também a serialização do tenant do livro físico. A segunda confirmação recebeu503 ao atingir o limite5s. Libertada a primeira transacção, o mesmo pedido recusou409 por versão antiga; uma nova conferência recebeu somente os400milésimos restantes. Uma expedição, duas recepções, três eventos/movimentos; nenhuma duplicação. Isto comprova esse conflito dirigido, não capacidade de carga sustentada.
As prévias executam os serviços dentro de savepoint revertido. A confirmação volta a conferir pessoa, direitos SGF/nativos, âmbito, mapa privado fixado, versões e impacto. Falha injectada depois do writer reverte movimento, repartições e recibo juntos. Repetição da confirmação devolve o mesmo recibo; chave usada com conteúdo diferente409. Há consulta histórica por chave depois de renovar a sessão, sem executar o comando. Retorno não recebido exige recepção física explícita na origem.
Os serviços nativos `InventoryLots`/`InventoryCounts`/`StockWorkflow` foram reutilizados sem modificar o pacote Compras fixado. O novo protocolo de trânsito acrescenta eventos auditados e escreve no mesmo `stock_movements`; não cria tabela de saldos ou outro livro. A excepção contabilística interna exige operação, parcelas, pessoa distinta, taxa revista e correspondência física reconciliadas. A conta SELECT-only anterior mantém as três tabelas.
O núcleo QA estava em modo de funções legadas e ignorava perfis. Para aplicar as sete funções aprovadas, o instalador conservou cada função antiga num perfil QA equivalente e passou ao mecanismo nativo de perfis, auditado. Não concedeu `warehouse` ao revisor. Os dois direitos novos estão exclusivamente na função QA de conferência, limitados pelo mapa privado ao destino e artigo/armazém aprovados. Leitura de Compras/Financeiro após esta alteração foi comprovada; nenhum acesso real/PUBLIC/role PostgreSQL foi criado.
## Provas consolidadas
Índice verificável: [sgf-six-module-functional-review-20261110.json](proofs/sgf-six-module-functional-review-20261110.json). Ficheiros privados referenciados por caminho/hash, sem credenciais ou dumps no repositório.
| Prova dirigida | Resultado e alcance |
|---|---|
| Ponte física Oficina–Stock |18 verificações; consumo sem segundo abatimento, devolução distinta, recuperação/falha e valorização100/50/25. Prova válida reutilizada. |
| Recuperação cliente da ponte |9 verificações de pedidos congelados; reutilizadas. |
| Oficina–Comercial |8 verificações e geração HTTP efectiva500; prova válida reutilizada. |
| Continuidade contabilística |13 leituras/atalhos/recibos; prova válida reutilizada. |
| Trânsito/lotes/ajuste |27 verificações; preparação/revisão, parcelas, isolamento, retenção/expiração, revogação, falha, recuperação e valorização80/10. Versões anteriores20 não são somadas. |
| Concorrência de recepção |Dois processos,503 durante o bloqueio,409 após libertação e conferência nova do restante; ensaio próprio, não uma contagem de percursos comerciais. |
| Reconciliação contabilística interna |6 verificações; transferência não gera despesa e o período confere fonte/destino. Apenas a última passagem da mesma prova é indexada. |
| Recuperação/retorno/permissão nativa |6 verificações adicionais, todas revertidas. |
| Preservação/conferência final |12 verificações: clientes/rascunhos e16 lançamentos anteriores idênticos, binding original intacto,145MZN,18 lançamentos e recusa de origem física desconhecida. |
| Fronteiras HTTP afectadas |20 verificações, páginas25/100, histórico, contexto antigo409, acesso indevido403, Compras/Financeiro preservados e SGC404. |
| Ecrã executado com DOM e HTTP |10 verificações: consulta/histórico e prévia HTTP reais; confirmação/perda de resposta simuladas, zero comandos de negócio confirmados pelo harness. Não é navegador nem revisão visual. |
| Cliente de confirmação |9 verificações dirigidas de recuperação, corpo imutável e recusa de alteração. |
| Fecho do período actualizado |7 verificações no conjunto actual, rollback integral. Reexecução necessária porque Stock/origens mudaram; não é uma repetição das aquisições/vendas/custos. |
| Arranque/recuperação |Prova anterior válida: reinício só do PHP8085, nova sessão,29 tabelas canónicas idênticas e SGC404. Não repetida nem apresentada como reinício do sistema operativo ou do PostgreSQL partilhado. |
As92 provas de integração anteriores, a paginação das origens, as provas C01–C10 e as38PG/15DOM/seis HTTP de Stock anteriores continuam preservadas. As execuções intermédias corrigidas não são somadas como provas novas. Erros iniciais de harness (nomes de colunas, IDs físicos da regressão, opções DOM e rotas/estados esperados) foram corrigidos; só resultados estruturados `passed:true` são aceites.
## Preservação e limites
- Clientes, rascunhos de serviços e de facturação existentes na8085 foram comparados integralmente antes/depois. Os16 lançamentos anteriores continuam idênticos; só80/10 foram acrescentados. Binding/pacote originais de Compras preservados. Novos artigos e origens de entrada são QA seleccionados explicitamente; a ordem preparada para o ensaio físico não é declarada outra aquisição C01–C10 executada.
- Os seis registos protegidos não receberam associações ou alterações. As outras bases protegidas não foram ligadas pelos novos scripts. Cache bloqueada, demonstrações anteriores e trabalho alheio preservados. Dumps/backups só privados; sem commit/checkpoint/aceitação presumidos.
- Revisão visual: **o utilizador confirmou «Abre e está legível» para o novo ecrã Stock em10/11**. O controlo automático terminou por não conseguir determinar com segurança o URL no Windows; não foi contornado. Esta confirmação não é revisão visual de todos os outros ecrãs, responsividade ou acessibilidade.
- O arranque em máquina já com o cluster existente activo e o reinício do servidor8085 estão comprovados. O caminho de arranque do cluster existente parado foi preparado, mas não testado desligando PostgreSQL partilhado ou outras aplicações. Reinício completo do computador permanece sem prova.
- Carga sustentada, retenção/quotas de anexos, reconciliação geral de órfãos e capacidade de implantação continuam pendências operacionais próprias. Provas de concorrência, paginação, DOM e configuração QA não as validam.
- Cenários financeiros, contas, imposto documental e documentos continuam artificiais; sem operações bancárias, fiscalidade certificada, dados/acessos reais ou produção geral valorizada. Calendário de marcações de oficina, lembretes, documentos comerciais adicionais e relatórios legais fora das funcionalidades fixadas na matriz não foram declarados implementados por este fecho.
**Saldo de entrega:** funcionalidades obrigatórias da matriz e ligações dos seis módulos executadas no recorte QA da mesma8085. A apresentação integral continua dependente da conferência visual restante e da aceitação explícita do conjunto. Isto não declara capacidade de implantação nem transforma o ensaio em produto operacional real certificado.