6.9 KiB
Caixa QA integrada na8085 —10/11/2026
Bloco SGF-CASH-QA-v1 expressamente autorizado pelo utilizador e entregue na mesma instalação. Financeiro → Recebimentos e Caixa → Caixa — abertura, despesas e fecho QA, ou /finance/cash após escolha de função. Oficinas → Financeiro tem continuação explícita para o módulo Financeiro. Mantém navegação horizontal/dropdowns e guardas de contexto; sem novas demonstrações, bases, portas ou dependência do SGC.
Os quatro direitos aprovados foram concedidos exactamente aos perfis existentes: cash.view13/14/15/16/17; cash.prepare13; cash.review14; cash.close14. Oito concessões em cada uma das duas bases QA existentes, empresa2/unidade2. Sem novas pessoas/perfis, roles PostgreSQL, funções nativas ou acessos reais/PUBLIC. Configuração desligada por omissão fora da instalação seleccionada.
Percurso concluído e conservado
| Passo | Preparação | Conferência | Saldo QA |
|---|---|---|---|
| Abertura explícita0 | Financeiro13 | Financeiro14 | 0MZN |
| Custódia fictícia1000, recebimento existente escolhido e meio Numerário declarado | Financeiro13 | Financeiro14 | 1000MZN |
| Despesa fictícia50 com beneficiário/descrição/comprovativo | Financeiro13 | Financeiro14 | 950MZN |
| Contagem950 e fecho | Contagem13 | Revisão e fecho14 | 950MZN, fechado |
Nove eventos append-only na8085. O recebimento é o da factura-recibo nova, efectivamente confirmado/afectado anteriormente; Caixa não emite outro documento, não recebe de novo, não altera a dívida nem presume numerário a partir da factura. A declaração de custódia é própria, explícita e fundamentada. Nenhum dinheiro real foi movimentado.
No mesmo diário, Contabilidade15 prepara e aplica, Contabilidade16 revê individualmente: reclassificação1000 D QA-CAIXA/C QA-LIQUIDACAO-CLIENTE e despesa50 D QA-DESPESA-CAIXA/C QA-CAIXA. A origem da liquidez tem de estar contabilizada antes da reclassificação. A conta de liquidez QA não representa uma conta bancária real. Contagem e fecho não lançam automaticamente. A instalação termina com 27 lançamentos equilibrados, incluindo apenas esses dois novos factos.
Fecho de Caixa recusa movimentos por valorizar, contagem divergente/antiga, decisões pendentes, autoridade revogada ou origem revertida. Divergência fica preservada; revisão pode recusar para permitir nova contagem, sem ajuste automático. O livro fechado não reabre. Uma reversão posterior da origem é bloqueio de conferência, sem retirar numerário ou devolver dinheiro por arrasto.
Consulta, prévia e recuperação
Extracto por datas/tipo e páginas25/100 na SQL; abertura/entradas/despesas/fecho do intervalo em leitura consistente. O filtro por tipo limita o histórico, não altera o resumo global da Caixa. Contagem não é movimento. Antes da abertura e quando a origem está bloqueada, o ecrã identifica o estado em vez de fabricar um saldo real.
Todas as decisões exigem fundamento, prévia revertida e confirmação com nova validação de identidade/contexto/permissões/versão/origem. A transacção mantém autoridade e bloqueio de empresa; escritor, recibo e auditoria são atómicos no host. Datas de classificação/despesa/contagem não podem anteceder as suas origens. Só valores exactos do recorte aprovado são admitidos.
Uma referência por confirmação recupera o recibo histórico, mesmo noutra sessão da mesma pessoa/contexto autorizado, sem executar de novo. Referências próprias ficam no histórico; a consulta não concede poderes de escrita. Formulários/prévia e resultado incerto ficam protegidos; não há limpeza de cache ou armazenamento de credenciais no cliente.
Provas
- 23 verificações dirigidas, todas revertidas na regressão existente: abertura, revisão própria/acesso indevido recusados, origem estrangeira, saldo, versão antiga, revogação, falha depois do writer e recuperação, duplicação, divergência, origem revertida, fecho sem diário recusado, duas valorizações e conservação dos documentos/efeitos financeiros.
receipt-composition-b4093c6f6707/single-integration/20261110-175251-07723b42/cash-result.json. - Concorrência entre dois processos apenas na regressão: segunda confirmação503 durante o bloqueio da empresa, depois409 por versão antiga; uma classificação e recuperação da primeira chave.
cash-concurrency/result.json. O ensaio conserva uma abertura/classificação1000 nessa regressão, sem a apresentar como o livro concluído da8085; não repetir a preparação nem a prova positiva inicial por rotina. - Sete verificações adicionais de leitura/fronteiras, após a prova concorrente: SQL25/100, intervalo posterior com abertura1000, tipo sem alterar saldo, data incompatível e empresa alheia recusadas, ciclo incompleto sem fecho.
single-integration/20261110-175845-a7f3eb7b/cash-read-boundaries.jsonna regressão. - 21 controlos HTTP na8085: nove decisões com recuperação, declaração1000 sem outra factura/recibo, despesa50, contagem950, fecho prematuro recusado, extracto, consulta sem escrita403, recuperação noutra sessão e diário27 equilibrado. As duas páginas do diário contêm25+2 registos únicos; tamanho da página não é o total.
cash-http-20261110.json. - Oito verificações de período na8085: 38 factos/zero pendentes, fecho/repetição e recusas em rollback, sem reabertura; período de apresentação mantém-se aberto.
single-integration/20261110-180324-fe0a46fd/period-cash-result.json. - 14 verificações DOM→HTTP de consulta/recuperação: Caixa fechada950, nove eventos, comandos bloqueados, filtros por tipo/data, saldo transportado e recibo recuperado, zero POSTs de confirmação.
cash-dom-http-20261110.json. Não é revisão visual de navegador. - Comparação SELECT-only com backup privado anterior a Caixa:25 lançamentos, clientes, facturas, movimentos físicos, registos/efeitos de recebíveis e binding original byte a byte intactos.
single-integration/20261110-180329-e03178dc/cash-preservation.json. Backup/dumps e dados privados fora do repositório; nenhuma aceitação/checkpoint Git presumida.
Build privado e verificações de sintaxe aprovados; assets anteriores retidos. Provas válidas dos restantes módulos reutilizadas, sem repetir comandos de Compras, documentos ou associações. Os seis registos protegidos e a cache bloqueada não foram alvo.
Limites
Um livro/uma origem fictícia1000, despesa50, MZN e período QA seleccionados, com duas contas artificiais novas. Não é operação geral de Caixa de uma empresa. Sem bancos/POS/câmbio/transferências externas, fiscalidade certificada, salários, dinheiro/acessos reais, ajuste automático ou reabertura. Sem publicação, candidata de Compras, SGC, novas demonstrações, aceitação ou capacidade de implantação presumida.
Revisão visual continua separada e a via de navegador bloqueada não foi repetida. Carga sustentada, armazenamento/retensão, conformidade real e implantação exigem evidência própria.