docs(iva): record joint travel and special event QA with limitations

This commit is contained in:
2026-10-25 01:45:12 +02:00
parent c309215d0f
commit 1a5f72209e
3 changed files with 116 additions and 3 deletions
@@ -0,0 +1,91 @@
{
"implementation_commit": "c309215d0f2c37ed8c5dfb6b04eb89a2d24a634e",
"implementation_initial": "7986d024",
"status": "QA_complete_P129_P133_demonstrated_scope_not_delivered",
"coverage": {
"AUD-SIM-L1-P129": [
"third_party_package",
"mixed_means_special_part",
"own_means_general",
"other_name_general",
"retailer_simple_general",
"retailer_new_package",
"foreign_establishment_outside"
],
"AUD-SIM-L1-P133": [
"travel_integral_first",
"travel_start_first",
"same_day_order_not_inferred",
"partial_8c",
"partial_then_full_no_double_count",
"invoice_before_special_event",
"travel_not_started",
"suspensive_exit_14_a_b_c_d",
"regime_still_held"
]
},
"branch_count_complete": 2,
"meaning": {
"P129": "Natureza e âmbito do regime38/39; meios próprios/terceiros e retalhista; margem global por operador/período do registo simulado, custos directos e exclusões41(3), excesso anterior/seguinte e base positiva com divisor1.16 arredondada à unidade. Sem IVA devido, dedução43d/campo11, regularização44 ou factura/modelo oficial emitidos.",
"P133": "Cessação efectiva de regime7(8), distinta de mudança de armazém/transferência; viagens7(9)/RIVA40 pelo primeiro entre integral e início/primeiro serviço, sem subtrair dia nem inferir ordem intradiária. Exigibilidade8 por factura/recebimento separada, incluindo sinal e saldo integral sem dupla soma. Sem montante de imposto, desembaraço, direito ou ICE apurados."
},
"examples": {
"travel_rows": 10,
"global_periods": 5,
"special_event_rows": 12
},
"source": "RIVA Decreto7/2008,38–46,acervoBR16-I16/04/2008PDF6–8/p104–106 (6/7 conferidas visualmente,46(2) texto extraídoPDF8). CIVA Lei13/2016,4(5)/5(2),PDF7/p1426(265);7(8)/(9)/8,PDF9/p1426(267);14(1),PDF13/p1426(271),páginas visualmente conferidas. CIVA17(1),Lei22/2022PDF3,16% usado no divisor da base;Lei10/2025não altera4/7/8/17. Não confundir regime fiscal com licenciamento turístico.",
"source_inventory": "C:\\laragon\\www\\portal-investidor\\outputs\\iva-l1-travel-events-20261025\\source-archive-inventory.json",
"documentary_cotejo": {
"reporting_excess": "41(5) e43a referem excesso e custos de período anterior/seguinte;43bii usa expressão exercício seguinte. Implementado transporte entre períodos por41(5)/43a, sem criar crédito ou dedução anual, com origem e correcção referenciadas e confirmação de divergência.",
"remaining_research": "Pesquisa delimitada de14(3)/calamidades no domínio AT/Governo não localizou ligação regulamentar específica adicional. Resultados de outras jurisdições não foram usados. Não declara inexistência de procedimento; preserva a cadeia documental já aceite de ModeloI.1 e pendênciasP084/P085/P104/P001.",
"official_notice": "https://portaldogoverno.gov.mz/governo-introduz-alteracoes-nos-regulamentos-fiscais-para-reforcar-eficiencia-tributaria/",
"notice_scope": "Anúncio já registado de alteração regulamentar não substitui texto/modelos. Limitações digitais mantidas, sem bloquear viagens/eventos."
},
"verification": {
"frontend": {
"tests": 29,
"passed": 29,
"failed": 0,
"coverage": "Margem global entre pacotes; negativos e reporte; custos excluídos; meios mistos; regimes gerais; datas; parcial/integral/factura; cessação/permanência; desconhecidos; divergência de reporte; isolamento; história e conservação integral dos livros anteriores."
},
"privateAPI": {
"tests": 1,
"assertions": 68,
"database": "simulator_fiscal_delta_20261021_test:55441",
"transaction": "rollback"
},
"types": "passed",
"build": "passed",
"browser": "Edge: registo global completo→parcial deixa base indeterminada, origens/histórico conservados; reposição e nova versão invalidam evento antigo. Pagamento integral→por esclarecer não inventa evento; reposto, gravado, recuperado e relatório aberto. Viagens versão4/histórico3; eventos versão5/histórico4. Relatório omite factos sem aplicação, preservando-os no rascunho/histórico.",
"screenshot": "C:\\laragon\\www\\portal-investidor\\outputs\\iva-l1-travel-events-20261025\\qa-recovered-report.png",
"preservation": "123 fechos inventariados antes dos testes, nenhum perdido; comparação integral do snapshot congelado retirando apenas os dois novos livros. Nenhuma escrita no activo."
},
"technical_choices": "Livros travelOperations/travelSpecialEvents por oportunidade no snapshot privado existente. BigInt6casas; divisor16% apenas para base. Eventos reutilizam motor entregue nos percursos com evento conhecido/adiantamento8c; factura anterior a7(9)mantém facto geradornull. Datas UTC/calendário explicitamente parametrizado. Eventos independem dos montantes da margem, exigem natureza/âmbito fiscal identificados. Referências em falta podem ser reutilizadas sem sobrescrever edições existentes.",
"runtime_delta": {
"resources/js/lib/iva-travel.ts": "253efc133fd968cbec0e0f04530d8757eb5dbf686cc2baa34a92a0efe71ee2fd",
"resources/js/lib/iva-travel-events.ts": "862c2c7c584a10e51626b215b5e23cceda9ed29859180c009be41113e30d30e9",
"resources/js/components/simulation-travel.tsx": "f966a67ed58ad86e7c8f80d1dfd6df2603f291529659bc52c4f32373bfaab93c",
"resources/js/components/simulation-travel-events.tsx": "0d12f7ace5d5c1488756675aab075f957d3833e059e58963cf69e5b1ea315bda",
"resources/js/components/simulation-monthly-iva.tsx": "ed7b32c1838eebf33fbb31366dc313bcc6fe718b3ffca9a990f495fa7a0d253a",
"resources/js/lib/project-dossier.ts": "a63f9ee361b175718ce405a888b8fca4f1525980a3f14bcea53770f49df2aaa0"
},
"limitations_balance": {
"digital": "Formalidades P121/P130: modelos da declaração/mapa de retenções e procedimentos de entrega/pagamento ainda não automatizados; cobertura digital integral não declarada. Mantém-se o limite da entrega df43aeb1.",
"travel": "Cálculo limitado à base da margem do registo simulado declarado, não apuramento integral da organização. Não calcula IVA devido/dedução42/43d, não executa regularização44, não emite factura45 ou modelo oficial46(2).",
"P104": "Conversão condicionada preservada; falta regra aplicável à escolha da taxa/data.",
"P084_P085": "Rascunhos e simulação condicionada preservados; ModeloI.1 não demonstra ligação a14(3) nem benefício concedido.",
"P001": "Pendência documental limitada aos campos05/06.",
"scope": "L1 aberto; bebidas L2/L3; Estatísticas/IA adiadas."
},
"counts_current": {
"delivered": 123,
"QA": 2,
"functional_pending": 7,
"P001": 1,
"total": 133
},
"homologation_unchanged": "df43aeb1",
"remaining": "Uma entrega conjunta compatível após aceitação, provas por ramo reutilizadas e delta instalado apenas. Sem push ou instalação neste incremento.",
"preservation_before_tests": "C:\\laragon\\www\\portal-investidor\\outputs\\iva-l1-travel-events-20261025\\preservation-before-tests.json"
}
@@ -1,5 +1,27 @@
# Rastreabilidade, utilização e formação
## 25/10/2026 — P129/P133 concluídos em QA no âmbito demonstrado
**123 entregues +2 em QA(P129/P133) +7 funcionais pendentes +P001=133**. Homologação`df43aeb1` inalterada, sem push/instalação. Os123 fechos, originais, relações, dados, acessos e históricos foram preservados; provas aceites reutilizadas. QA isolada55441 com guarda e rollback.
P129: abrir «Agências de viagens — pacote, meios utilizados e margem do período». Identificar preço único, nome próprio, meios próprios/terceiros, venda retalhista/novo conjunto e sede prestadora. Meios mistos conservam contraprestação da parte geral separada; repartição depende de referência concreta. Custos directos de terceiros distinguem-se das exclusões41(3), sem dedução criada. O registo global exige âmbito completo declarado por operador/período, sem misturar efectivo e projectado nem apresentar parcela como toda a organização. A margem positiva é dividida por1.16, base arredondada à unidade; o excesso negativo é custo transportável, não crédito/reembolso fiscal. Diferença entre excesso indicado e anterior calculado mostra impacto e exige confirmação da correcção referenciada, conservando ambos os valores/histórico.
O reporte entre períodos segue41(5) e43a;43bii usa a expressão «exercício seguinte», conservada na citação sem criar crédito/dedução anual. Sem apuramento de IVA devido, dedução42/43d, regularização44, emissão de factura45 ou modelo oficial46(2). Facturação com menção IVA incluído não equivale a factura emitida pelo simulador.
P133: abrir «Eventos de viagens e cessação de regimes suspensivos». Associar viagem classificada da mesma oportunidade, reutilizando apenas referências em falta. O período do evento pode diferir do registo da margem. O primeiro entre integral e imediatamente antes do início/primeiro serviço determina7(9); não subtrair um dia ou presumir ordem intradiária se datas coincidem. Factura, sinal e saldo integral mantêm exigibilidade8 distinta e sem dupla soma. Montante da margem por esclarecer não bloqueia evento de natureza/âmbito fiscal demonstrados. Origem alterada invalida resultado actual, preservando a versão anterior. Regime7(8) só produz evento pela cessação efectiva documentada; permanência ou mudança de armazém/transferência não vira saída. Sem liquidação aduaneira, direitos/ICE ou IVA calculados.
Passaram29 testes frontend, API privada1teste/68asserções, tipos/build e Edge: alteração de registo completo para parcial, restabelecimento, alteração de pagamento integral para desconhecido, reposição, gravação/recuperação e relatório. Dez operações de viagens, cinco períodos globais e doze eventos. Viagens versão4/histórico3 e eventos versão5/histórico4 na prova visual. Relatório omite factos sem aplicação, conservando-os no rascunho/histórico. Implementação`c309215d`; recibo`docs/investmoz/simulations/iva-l1-travel-events-qa-20261025.json`.
Fontes: RIVA Decreto7/2008,38–46,BR16-I16/04/2008PDF6–8/p104–106; CIVA2016PDF7/9/13,4(5)/5(2)/7(8)/(9)/8/14(1); taxa17(1)na redacção2022 apenas no divisor da base. Sete exemplares inventariados por hash. Regime fiscal não confundido com licenciamento turístico. A pesquisa delimitada de14(3)/calamidades não trouxe ligação regulamentar específica adicional; fontes estrangeiras não foram transpostas. P084/P085 continuam preparação e simulação condicionada, sem benefício concedido.
**Saldo de limitações:** formalidades digitais P121/P130 — modelos da declaração/mapa de retenções e procedimentos de entrega/pagamento — continuam não automatizadas; não se declara cobertura digital integral. Mantêm-se também os limites do incremento de viagens acima. L1 aberto; P001 campos05/06; P104 taxa/data cambial pendente; bebidasL2/L3; Estatísticas/IA adiadas.
Restantes IDs por impedimento/próxima acção: P046, correspondência12(1)a/lista2025 com isenções internas já entregues; P047, diplomas/âmbito de benefícios aduaneiros12(1)b; P058, condições/limites aduaneiros de regresso e proporcionalidade12(2)a; P059, despacho/condições dos mineiros12(2)b; P084/P085, ligação regulamentar14(3) para cenários distintos; P104, norma de selecção da taxa/data; P001, instrução documental05/06. Dependências documentais não bloqueiam grupos independentes. Próxima entrega compatível deve agrupar P129/P133, reutilizando provas por ramo e conferindo somente o delta instalado.
## 25/10/2026 — preparação QA P129/P133
123 fechos inventariados antes dos testes; sem perdas confirmadas. Provas df43aeb1/91c40633 reutilizadas, livros/históricos congelados. RIVA38–46,PDF6–7/p104–105, e CIVA4(5)/5(2)/7(8)/(9)/8/14(1),PDF7/9/13, conferidos visualmente. Margem das viagens é global por período, não por pacote; meios próprios seguem regime geral. Eventos especiais conservam a distinção do facto gerador e exigibilidade; sem presumir saída aduaneira, datas ou autorizações. Formalidades digitais não automatizadas continuam no saldo de limitações; P104/P084/P085/P001 permanecem documentais específicos, sem bloquear este grupo. Sem escrita no activo.
## 25/10/2026 — P002/P121/P130 entregues conjuntamente no âmbito demonstrado
Homologação **`df43aeb1`**, sobre`e8b5ae43`; candidatas`e4c490b3`/`de4b25bb` aceites pela Tempo. Uma integração, backup/restauro real isolado, instalação e conferência do delta. Provas individuais reutilizadas;120fechos anteriores preservados.
File diff suppressed because one or more lines are too long