docs(iva): prepare joint P088-P124 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,140 @@
|
||||
{
|
||||
"status": "ready_after_fresh_authenticated_preflight_and_verified_backup_restore",
|
||||
"candidate": "cd259623aed6e8831091866de02d5e5db4ef1818",
|
||||
"base_installed": "63cc336787cade92fb7ee5b2b2d407308a0cf66b",
|
||||
"coverage_complete_branches": {
|
||||
"AUD-SIM-L1-P088": [
|
||||
"permanent_private_goods",
|
||||
"free_goods_transfer",
|
||||
"exempt_sector_goods",
|
||||
"fixed_asset_20a"
|
||||
],
|
||||
"AUD-SIM-L1-P124": [
|
||||
"permanent_private_goods",
|
||||
"free_goods_transfer",
|
||||
"exempt_sector_goods",
|
||||
"fixed_asset_20a"
|
||||
]
|
||||
},
|
||||
"branch_count_complete": 2,
|
||||
"treatment_count": 4,
|
||||
"runtime_delta": [
|
||||
{
|
||||
"path": "resources/js/lib/iva-goods-allocation.ts",
|
||||
"sha256_LF": "6646a2054ebd4e6731b60719d36ce922ed50f2e062e0f980190eb20ce8c23d20"
|
||||
},
|
||||
{
|
||||
"path": "resources/js/components/simulation-goods-allocation.tsx",
|
||||
"sha256_LF": "08c84f4b9af21e46cd9d5af6f6bee9e12c14b111438f1649a694a27f36d14180"
|
||||
},
|
||||
{
|
||||
"path": "resources/js/components/simulation-monthly-iva.tsx",
|
||||
"sha256_LF": "1b27e8d3a6c79c6f8769bf5158ed8be45718f655b13cdf23b517bdb44c5a6951"
|
||||
},
|
||||
{
|
||||
"path": "resources/js/lib/project-dossier.ts",
|
||||
"sha256_LF": "c5de565ff7ded1fcf4d1f3a025694d3e2af4ff75e55266463758e8c1c5fcc314"
|
||||
}
|
||||
],
|
||||
"counts_before": {
|
||||
"delivered": 109,
|
||||
"QA": 2,
|
||||
"functional_pending": 21,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"counts_current": {
|
||||
"delivered": 109,
|
||||
"QA": 2,
|
||||
"functional_pending": 21,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"counts_after_delivery": {
|
||||
"delivered": 111,
|
||||
"QA": 0,
|
||||
"functional_pending": 21,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"QA_proofs_reused": [
|
||||
"iva-l1-goods-allocation-qa-20261025.json"
|
||||
],
|
||||
"authorization": "Tempo explicitly requests one joint delivery ofcd259623,P088/P124,main compatibility/concurrent changes preserved,installeddelta only",
|
||||
"scope": "2026/MZN,quatro tratamentos partilhados entre dois requisitos sobre a mesma operação,registada uma vez. Distinto de uso temporário de bens como serviçoP089. Sem nova dedução/campo11,regularização,taxaIVA,IVA ou totaisModeloA;dedução anterior apenas facto histórico. Excepçãoamostras/ofertas fica fora deste percurso quando aplicável;desconhecido permanece indeterminado.",
|
||||
"source": "CIVA3(3)e/f,Lei13/2016PDF6–7/p1426(264–265);15(2)b,PDF13/p1426(271);20(1)a,PDF15/p1426(273). Lei22/2022PDF3mantém15(2)b e20(1)a;Lei10/2025PDF12mantém3(3)e/f e não altera15/20.",
|
||||
"meaning": {
|
||||
"P124": "Classificação da afectação permanente de bens a uso próprio/particular/alheio,transmissão gratuita,afectação a sector isento ou aoactivo imobilizado de bens20(1)a. Exige dedução anterior total/parcial nos bens/elementos;em3e conferir excepção de amostras/ofertas depequeno valor,sem limiar inventado. Facto histórico de dedução,não nova dedução.",
|
||||
"P088": "Base15(2)b:preço aquisição ou,na sua falta demonstrada,preço custo,reportados ao momento da operação. ClassificaçãoP124 pode estar identificada ebaseP088 indeterminada;sem custo por defeito para preço aquisição desconhecido."
|
||||
},
|
||||
"formula": "15(2)b:current acquisitionprice;only if absent,currentcost.No automaticvaluation/update/depreciation/deduction.",
|
||||
"preservation": "109prior closures and partialP084/P085 preserved;accepted perbranchQA reused;one integration/backup/real isolatedrestore/check for whole set",
|
||||
"partial_P084_P085": "Preparation/conditional simulation only,benefits pending;no closure",
|
||||
"limits": "L1open;newdeduction/regularisationoutsideincrement;P00105/06;P121digital/P084/P085pending;beveragesL2/L3;Statistics/AIdeferred",
|
||||
"containment": "l1-goods-allocation-readonly-rollback-20261025.patch,checked only,not applied;blocks newP096–099classifications,preserves readers/history/otherbranches",
|
||||
"authenticated_preflight": {
|
||||
"installed": {
|
||||
"status": "installed",
|
||||
"commit": "63cc336787cade92fb7ee5b2b2d407308a0cf66b",
|
||||
"release": "/var/www/investmoz-homologacao/releases/63cc336787cade92fb7ee5b2b2d407308a0cf66b-a32af166",
|
||||
"previous_release": "/var/www/investmoz-homologacao/releases/2fdca86367d8bad524113b4cf6c49a0110130be9-c65ebbad",
|
||||
"database_migrations": 0,
|
||||
"content_imports": 0
|
||||
},
|
||||
"current_link": "/var/www/investmoz-homologacao/releases/63cc336787cade92fb7ee5b2b2d407308a0cf66b-a32af166",
|
||||
"release_revision": {
|
||||
"commit": "63cc336787cade92fb7ee5b2b2d407308a0cf66b",
|
||||
"branch": "main",
|
||||
"built_at": "2026-10-24T22:09:58.694541+00:00",
|
||||
"manifest_sha256": "40f4377487ec290e47d1bee92146172fa4e2a316fa4a072dcc82300fea3cc6c1"
|
||||
},
|
||||
"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-allocation-delivery-20261025/backup",
|
||||
"target": {
|
||||
"database": "teste_investidor",
|
||||
"port": 5432
|
||||
},
|
||||
"tables": 174,
|
||||
"files_verified": 369,
|
||||
"dump_sha256": "a78973a94e05f58ab4cea4bebedca4603d7f68aa4a0d8a46b889d27751514e64",
|
||||
"files_sha256": "9302d0e283a5ea2619de1fbe5853d4c2e563d455d7aafb7e88203eafc6ef85e1",
|
||||
"restore_verified": false
|
||||
},
|
||||
"restore": {
|
||||
"restore_verified": true,
|
||||
"tables_verified": 174,
|
||||
"container_network": "none",
|
||||
"database": "l1_goods_allocation_restore_20261024",
|
||||
"port": 55441,
|
||||
"source_dump_sha256": "a78973a94e05f58ab4cea4bebedca4603d7f68aa4a0d8a46b889d27751514e64",
|
||||
"active_database_writes": 0
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
--- a/resources/js/lib/iva-goods-allocation.ts
|
||||
+++ b/resources/js/lib/iva-goods-allocation.ts
|
||||
@@ -55,6 +55,7 @@
|
||||
function key(draft:Record<string,unknown>,book:GoodsAllocationBook):string{return JSON.stringify({version:goodsAllocationVersion,scope:acquisitionScope(draft),location:draft.selection_labels??{},currency:draft.currency,rows:book.rows});}
|
||||
export function goodsAllocationCurrent(draft:Record<string,unknown>,book:GoodsAllocationBook):boolean{return!!book.result&&book.result.sourceKey===key(draft,book);}
|
||||
export function recordGoodsAllocations(draft:Record<string,unknown>,book:GoodsAllocationBook):GoodsAllocationBook{
|
||||
+ throw new Error('Novas classificações P088/P124 temporariamente suspensas; dados, histórico, relatórios e restantes ramos preservados.');
|
||||
if(!book.rows.length||new Set(book.rows.map(row=>row.id)).size!==book.rows.length)throw new Error('Indique operações com identificadores distintos;originais conservados.');
|
||||
const result:GoodsAllocationCalculation={version:goodsAllocationVersion,revision:(book.result?.revision??0)+1,calculatedAt:new Date().toISOString(),opportunity:acquisitionScope(draft),location:JSON.stringify(draft.selection_labels??{}),sourceKey:key(draft,book),source:goodsAllocationSource,inputs:structuredClone(book.rows),rows:book.rows.map(row=>evaluateGoodsAllocation(row,draft.currency))};
|
||||
const next={...book,result,history:[...(book.history??[]),...(book.result?[book.result]:[])]};saveGoodsAllocationBook(draft,next);return next;
|
||||
Reference in New Issue
Block a user