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

11 KiB
Raw Blame History

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. 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.