Files
SGF/docs/GENERAL_LEDGER_INDUSTRIAL_DELIVERY.md
T
2026-11-04 09:37:20 +02:00

9.1 KiB
Raw Blame History

Lote industrial → Contabilidade — entrega sintética local

Continuação posterior expressamente autorizada e entregue em bases novas: correcção1800→1820. As exclusões de correcção abaixo descrevem o âmbito original desta entrega e continuam na demo8058; a capacidade nova existe só na8059 e nas suas bases de prova. Manifestos anteriores conservam o estado histórico.

03/11/2026. COMMON-LEDGER-INDUSTRIAL-SIM-v1, autorizado expressamente por «Autorizar o ciclo industrial sintético proposto». Recorte aprovado preservado por hash; sem aceitação ou checkpoint presumidos.

Implementado: resultado industrial efectivamente preparado/validado pelo módulo proprietário → captura com impacto → revisão contabilística distinta → aplicação única pelo escritor comum → diário/balancete/razão → conferência e fecho QA conjunto. Demonstração inicial separada: http://127.0.0.1:8058/qa/cost-demo.

Origem e impacto

IndustrialCostFixture executa os workflows de IndustrialCosts, com identidades distintas para preparar e validar entradas, taxas e critério. Calcula-se e valida-se explicitamente o resultado:20KG×50=1000 material;300MIN÷60×100=500 trabalho; conjunto CIF600/capacidade10HM×utilização5HM=300 imputados. Total1800MZN;10UN;180/UN. Residual300 separado e não lançado. As aprovações positivas não são fabricadas por SQL.

IndustrialCosts::conference confere um lote e o resultado actual, incluindo o produto, entradas/versões, taxas, critério, decisões e validade das dependências, sem carregar a listagem industrial inteira ou obter bloqueio de escrita. IndustrialLedgerSource conserva esta evidência na fotografia da origem. Exige resultado vigente completo aprovado distintamente, produção concluída e valor exacto representável em cêntimos; não arredonda ou transforma800 conhecidos sem taxa material num total.

O escritor PayableJournal existente aplica D QA-CUSTO-INDUSTRIAL1800 / C QA-COMPENSACAO-INDUSTRIAL1800, em duas linhas. Usa a transacção/bloqueio de empresa, autorização actual, revisão exacta, idempotência, histórico e guardas QA existentes. Não há segundo motor, processamento da outbox ou efeito financeiro adicional. A identidade do efeito é estável por lote/perímetro, mesmo se o resultado ganhar outra versão. Um resultado já lançado que muda fica requires_future_correction; não se criou correcção industrial por consequência desta entrega.

O período contabilístico tem de conter o período completo do lote. O fecho inclui todas as fontes explicitamente compostas, revalidando permissões e dependências industriais mesmo quando o montante continua1800. Perda de acesso, origem pendente ou versão alterada exige nova conferência.

Composição e consulta

Nova base/role de demonstração e bases distintas de regressão no cluster55439. O instalador industrial exige livro novo vazio e cria apenas a selecção imutável dos perímetros QA; não migra instalações anteriores. Guardas SQL de custeio industrial são configuradas para a identidade exacta dessas bases novas, preservando os bloqueios no destino. A capacidade industrial_ledger.synthetic_enabled fica desligada por omissão.

O painel conjunto passa a incluir lotes industriais apenas quando essa capacidade foi explicitamente composta. Páginas independentes de25; resultados/decisões/lançamentos são lidos em conjuntos por página, sem conferência por cartão. Os cartões distinguem metadados registados de uma conferência actual. Sem industrial_costs.view, o painel não revela linhas ou contagens, e não expõe formas de fecho. Origem indisponível falha explicitamente. A página do lote, diário genérico e razão mantêm ID industrial tipado e ligações à evidência; não apresentam lote como dívida de fornecedor.

Reutilizam-se apenas direitos existentes: preparador industrial .view/prepare, validador .view/validate, leitor .view, mais os direitos contabilísticos/contextuais já autorizados. As concessões existem exclusivamente nas fixtures novas. Sem novos direitos públicos/reais ou associação de privilégios a pessoas reais.

O módulo proprietário impede reutilizar source_ref entre lotes. A ligação contabilística recusa origens seleccionadas que coincidam com perímetros de custo directo; o adaptador directo também confere a composição industrial quando activada. São origens sintéticas distintas. Isto não constitui um adaptador de stock ou prova de equivalência de referências empresariais legadas.

Resultados e provas

Manifesto: common-ledger-industrial-20261103.json.

Prova Resultado
Regressão 1aa5762a0c16 8 casos/31 verificações em rollback: exactidão, parcialidade, dependências, direitos/pessoa, contexto elegível de tenant/empresa/unidade diferente, quatro pontos de falha, recuperação, duplicação, sobreposição directa, mapeamento imutável e páginas25+1
Limites adicionais na mesma base 5 casos/10 verificações em rollback: resultado não aprovado, total racional1800,0000002 sem arredondamento, produção não concluída, critério pendente, origem reutilizada entre lotes, sucessora de resultado já lançado e período incompatível
HTTP real 43 verificações: autenticação, CSRF, contexto/módulo, filtros, impacto, preparador/validador distintos, revisão antiga, repetição, razão/diário tipados e recusa de fecho com outras fontes pendentes
JavaScript industrial renderizado 5 verificações em Node VM: IDs numéricos, revisão textual exacta, datas/período, chave estável, nova chave para novo fundamento e apresentação/recuperação de recusa
Percurso conjunto 33 verificações em 1aa5762a0c16, após o HTTP industrial; nove lançamentos/19 linhas e fecho único, incluindo perda de direitos industriais e sucessora industrial do mesmo valor antes de fechar
Concorrência e3009c989fb2 6 processos reais:1 leitor e5 escritores. Espera no bloqueio da empresa, cadeia até à transacção detentora observada em pg_stat_activity; leitor termina antes da libertação; versão industrial alterada/confirmada causa409 depois da libertação; duas aplicações recuperam o mesmo lançamento e dois fechos recuperam o mesmo fecho
Demo 072ef8124ab4 40 verificações de três perfis, links efectivos e controlos; quatro delas simulam o formulário do período em Node VM. Sem comandos de negócio. Hash antes/depois confirma fontes/outbox/direitos preservados, sem lançamento industrial ou fecho

162 verificações dirigidas, incluindo9 verificações simuladas de formulário, mais a prova de6 processos concorrentes. Os13 casos de regressão são transaccionais e não consomem a demo. A primeira execução do teste adicional de produção apanhou uma ValidationException esperada que o auxiliar não capturava; corrigiu-se o auxiliar, preservando o comportamento de recusa do produto, antes de gerar a prova válida.

Resultado conjunto na regressão Valor
Vendas/recebíveis:4 lançamentos/9 linhas Bruto2400 por lado; saldo cliente400
Custo directo e correcção:3 lançamentos/6 linhas Bruto845 por lado; saldo custo295
Fornecedor:1 lançamento/2 linhas Bruto60 por lado; dívida financeira60
Industrial:1 lançamento/2 linhas Bruto1800 por lado; saldo industrial1800
Conjunto:9 lançamentos/19 linhas Débitos5105 = créditos5105MZN;1 fecho
Residual industrial 300MZN fora do diário

As conferências finais comparam a origem industrial actual com a fotografia lançada, validam o equilíbrio SQL e confirmam que toda a outbox industrial continua captured_no_stock_or_accounting. A comparação de hash dos fornecedores de período preserva o comportamento anterior quando o fornecedor industrial está desligado, incluindo a demo8057: três painéis, sem schema industrial e impressão digital original dos dados/direitos intacta. Provas antigas válidas e pacotes congelados são conferidos por hash, não repetidos ou substituídos.

Limitações preservadas

A demo8058 inicia-se com o custo directo275 lançado e fontes disponíveis de venda1000, fornecedor60, sucessor directo295 e industrial1800. Abertura de recebíveis, aplicações adicionais, correcção e fecho continuam por decisões individuais. As regressões consumidas estão em bases diferentes. Demos anteriores e comprovativos não foram repostos.

Sem stock valorizado, folha salarial, contas ou enquadramento fiscal real, pagamentos novos, correcção industrial, reabertura, instalação no destino, activação de Compras ou publicação. Os seis registos protegidos e a cache bloqueada não foram usados ou alterados. Alterações alheias preservadas; credenciais permanecem fora do repositório.

Revisão visual permanece pendente: HTTP e Node VM não são prova de navegador ou aceitação da equipa. Carga sustentada/concorrência em volume e capacidade de implantação continuam pendentes distintas; os ensaios pequenos não validam operação real ou a aplicação inteira. Não se acrescentaram experiências de índices nem se aplicaram índices no destino.