docs(iva): prepare joint P123 P126 delivery after backup and isolated restore
tests / ci (push) Canceled after 0s
tests / ci (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,137 @@
|
||||
{
|
||||
"status": "ready_after_fresh_authenticated_preflight_and_verified_backup_restore",
|
||||
"candidate": "a5b1ae66576f927a31d7917527fd8354e7c604eb",
|
||||
"base_installed": "019bcbad6c5a2371e4ca55f7b687447316606fb1",
|
||||
"coverage_complete_branches": {
|
||||
"AUD-SIM-L1-P123": [
|
||||
"consignment_180"
|
||||
],
|
||||
"AUD-SIM-L1-P126": [
|
||||
"missing_goods",
|
||||
"excess_consumption",
|
||||
"found_goods"
|
||||
]
|
||||
},
|
||||
"branch_count_complete": 2,
|
||||
"treatment_count": 4,
|
||||
"QA_example_count": 4,
|
||||
"runtime_delta": [
|
||||
{
|
||||
"path": "resources/js/lib/iva-goods-presumptions.ts",
|
||||
"sha256_LF": "16047a0a2e7c052a42e83e3983dab7465a2ae5f1d66966896220f27625ab6f17"
|
||||
},
|
||||
{
|
||||
"path": "resources/js/components/simulation-goods-presumptions.tsx",
|
||||
"sha256_LF": "1dcb1d5a057d3b7a3a33beb36a912b90ea258cbc00d74a8140512b82b9b5a589"
|
||||
},
|
||||
{
|
||||
"path": "resources/js/components/simulation-monthly-iva.tsx",
|
||||
"sha256_LF": "ec9b9ea5fa3f044fd76bf30cac2ee54304a58d502888bf28c705e189f4135d4c"
|
||||
},
|
||||
{
|
||||
"path": "resources/js/lib/project-dossier.ts",
|
||||
"sha256_LF": "2c8eb800c1366614521e33930e49b66c4c9efa4a48c90a784bd4d1bf80b06c7a"
|
||||
}
|
||||
],
|
||||
"counts_before": {
|
||||
"delivered": 114,
|
||||
"QA": 2,
|
||||
"functional_pending": 16,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"counts_current": {
|
||||
"delivered": 114,
|
||||
"QA": 2,
|
||||
"functional_pending": 16,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"counts_after_delivery": {
|
||||
"delivered": 116,
|
||||
"QA": 0,
|
||||
"functional_pending": 16,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"QA_proofs_reused": [
|
||||
"iva-l1-goods-presumptions-qa-20261025.json"
|
||||
],
|
||||
"authorization": "Tempo explicitly requests one joint delivery ofa5b1ae66,P123/P126,preserving concurrent changes and installeddelta only",
|
||||
"scope": "2026,data de conferência/âmbito identificados;classificação da operação,prazo e presunções,não base/exigibilidade/taxa/IVA,nova dedução/regularização/campo11 ou totaisModeloA.P123 não são embalagensP102;P126 não comprova aquisição efectiva/factura ou elegibilidade para margemP092/P093/P125.Devoluções parciais separadas por conjunto;devolução posterior não apaga histórico.",
|
||||
"source": "CIVA Lei13/2016,3(3)d,PDF6/p1426(264);3(4),PDF7/p1426(265),páginas digitalizadas visualmente conferidas.Lei22/2022 não altera3;Lei10/2025 PDF12 mantém3(3)d/3(4).Rectificação2017 não altera estas disposições. Acervo completo seisPDF inventariado e hashes conferidos.",
|
||||
"meaning": {
|
||||
"P123": "Mercadorias enviadas à consignação não devolvidas em180dias da entrega ao destinatário,3(3)d. Data de entrega/destinatário,conjunto não devolvido e data de conferência identificados;prazo de180dias calculado. No dia180 o prazo ainda decorre;após o prazo,a transmissão é identificada neste recorte,sem calcular exigibilidade/base/IVA.",
|
||||
"P126": "Presunções ilidíveis3(4):transmissão de bens adquiridos/importados/produzidos não localizados nos estabelecimentos,ou consumo excessivo face ao volume de produção;e aquisição dos bens encontrados nesses locais. Levantamento,estabelecimentos,conjunto/período e prova em contrário separados. Desconhecido indeterminado;prova identificada afasta presunção apenas no âmbito declarado,sem concessão de isenção."
|
||||
},
|
||||
"classification_and_proof": "P123 consignments not packaging;P102 preserved.P126 rebuttable presumptions,explicit contraryproof and scope;unknown remainsindeterminate;no automaticmargin/VAT/deduction",
|
||||
"preservation": "114priorclosures andpartialP084/P085 preserved;acceptedperbranchQA reused;one integration/backup/realisolatedrestore/check forwhole set",
|
||||
"partial_P084_P085": "Preparation/conditional simulation only;benefits pending;no closure",
|
||||
"limits": "L1aberto;P00105/06;P121digital/P084/P085pendentes;bebidasL2/L3;Estatísticas/IAadiadas",
|
||||
"containment": "l1-goods-presumptions-readonly-rollback-20261025.patch,checked only,not applied;blocks newP123/P126calculations,preserves readers/history/otherbranches",
|
||||
"authenticated_preflight": {
|
||||
"installed": {
|
||||
"status": "installed",
|
||||
"commit": "019bcbad6c5a2371e4ca55f7b687447316606fb1",
|
||||
"release": "/var/www/investmoz-homologacao/releases/019bcbad6c5a2371e4ca55f7b687447316606fb1-8865b05d",
|
||||
"previous_release": "/var/www/investmoz-homologacao/releases/6c12aabb3ac7f8296025a2af0408390bfe292bdb-4c33615a",
|
||||
"database_migrations": 0,
|
||||
"content_imports": 0
|
||||
},
|
||||
"current_link": "/var/www/investmoz-homologacao/releases/019bcbad6c5a2371e4ca55f7b687447316606fb1-8865b05d",
|
||||
"release_revision": {
|
||||
"commit": "019bcbad6c5a2371e4ca55f7b687447316606fb1",
|
||||
"branch": "main",
|
||||
"built_at": "2026-10-24T22:32:38.963919+00:00",
|
||||
"manifest_sha256": "ee5b4b3aa24f1b2fabf6ee212c03211e085b05dab858693f80907b23569c0aab"
|
||||
},
|
||||
"service": "ExecMainStatus=0\nActiveState=inactive\nSubState=dead\n",
|
||||
"configuration_keys": [
|
||||
"repository",
|
||||
"branch",
|
||||
"target_url",
|
||||
"legacy_root",
|
||||
"state_root",
|
||||
"release_root",
|
||||
"current_link",
|
||||
"shared_assets",
|
||||
"php",
|
||||
"schema_contract",
|
||||
"ci_environment",
|
||||
"postgis_image",
|
||||
"test_database",
|
||||
"qa_port",
|
||||
"retention",
|
||||
"webhook_secret_file"
|
||||
],
|
||||
"safe_paths": {
|
||||
"repository": "nala/Investidor-V2",
|
||||
"release_root": "/var/www/investmoz-homologacao/releases",
|
||||
"postgis_image": "postgis/postgis@sha256:01a6a70e41e6c4467c8f55f6063555ed72db2d6662cd0d571040d42eadaeb6f6"
|
||||
},
|
||||
"pipeline_sha256": "adec1c17654f3a8658b83b134f1e75f95391b235738552721906c3236e388604"
|
||||
},
|
||||
"backup_restore": {
|
||||
"backup": {
|
||||
"stage": "/var/backups/investmoz-l1-goods-presumptions-delivery-20261025/backup",
|
||||
"target": {
|
||||
"database": "teste_investidor",
|
||||
"port": 5432
|
||||
},
|
||||
"tables": 174,
|
||||
"files_verified": 369,
|
||||
"dump_sha256": "9c0a4e214cd739e912230df4d43e14d2b182e2db85637b019f9dfcabc77c450c",
|
||||
"files_sha256": "e6815f2a443beecdb9d3b61e2dbaec1ca9c53f394d07bc70c43021e1e20f9d11",
|
||||
"restore_verified": false
|
||||
},
|
||||
"restore": {
|
||||
"restore_verified": true,
|
||||
"tables_verified": 174,
|
||||
"container_network": "none",
|
||||
"database": "l1_goods_presumptions_restore_20261024",
|
||||
"port": 55441,
|
||||
"source_dump_sha256": "9c0a4e214cd739e912230df4d43e14d2b182e2db85637b019f9dfcabc77c450c",
|
||||
"active_database_writes": 0
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
--- a/resources/js/lib/iva-goods-presumptions.ts
|
||||
+++ b/resources/js/lib/iva-goods-presumptions.ts
|
||||
@@ -47,6 +47,7 @@
|
||||
function key(draft:Record<string,unknown>,book:GoodsPresumptionBook):string{return JSON.stringify({version:goodsPresumptionVersion,scope:acquisitionScope(draft),location:draft.selection_labels??{},rows:book.rows});}
|
||||
export function goodsPresumptionCurrent(draft:Record<string,unknown>,book:GoodsPresumptionBook):boolean{return!!book.result&&book.result.sourceKey===key(draft,book);}
|
||||
export function recordGoodsPresumptions(draft:Record<string,unknown>,book:GoodsPresumptionBook):GoodsPresumptionBook{
|
||||
+ throw new Error('Novos cálculos P123/P126 temporariamente suspensos;dados,histórico,relatórios e restantes ramos preservados.');
|
||||
if(!book.rows.length||new Set(book.rows.map(r=>r.id)).size!==book.rows.length)throw new Error('Indique operações com identificadores distintos;originais conservados.');
|
||||
const result:GoodsPresumptionCalculation={version:goodsPresumptionVersion,revision:(book.result?.revision??0)+1,calculatedAt:new Date().toISOString(),opportunity:acquisitionScope(draft),location:JSON.stringify(draft.selection_labels??{}),sourceKey:key(draft,book),source:goodsPresumptionSource,inputs:structuredClone(book.rows),rows:book.rows.map(evaluateGoodsPresumption)};
|
||||
const next={...book,result,history:[...(book.history??[]),...(book.result?[book.result]:[])]};saveGoodsPresumptionBook(draft,next);return next;
|
||||
Reference in New Issue
Block a user