# 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.view`13/14/15/16/17; `cash.prepare`13; `cash.review`14; `cash.close`14. 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.json` na 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.