docs(iva): prepare G6H delivery after verified backup and isolated restore
tests / ci (push) Canceled after 0s
tests / ci (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,118 @@
|
||||
{
|
||||
"status": "ready_after_fresh_authenticated_preflight_and_verified_backup_restore",
|
||||
"candidate": "2359a88dba92147eb28769c7d9ae908cb2df7227",
|
||||
"base_installed": "9b26217dec945fe07b665c6ad7638a965bf104a9",
|
||||
"coverage_complete_branches": {
|
||||
"AUD-SIM-L1-P060": [
|
||||
"un_development_exemption",
|
||||
"un_development_reduction"
|
||||
]
|
||||
},
|
||||
"branch_count_complete": 1,
|
||||
"treatment_count": 2,
|
||||
"runtime_delta": [
|
||||
{
|
||||
"path": "resources/js/lib/iva-import-exemptions.ts",
|
||||
"sha256_LF": "799e9a0020e805af9f67387bfa36608c4973f15c4427d1b82c3f6b6398aed129"
|
||||
},
|
||||
{
|
||||
"path": "resources/js/components/simulation-import-exemptions.tsx",
|
||||
"sha256_LF": "89ab431fa6810c1f56897f203a817a41722c4a9df0cb075561dee6208e8730d1"
|
||||
}
|
||||
],
|
||||
"counts_before": {
|
||||
"delivered": 77,
|
||||
"QA": 1,
|
||||
"functional_pending": 54,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"counts_current": {
|
||||
"delivered": 77,
|
||||
"QA": 1,
|
||||
"functional_pending": 54,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"counts_after_delivery": {
|
||||
"delivered": 78,
|
||||
"QA": 0,
|
||||
"functional_pending": 54,
|
||||
"documentary": 1,
|
||||
"total": 133
|
||||
},
|
||||
"QA_proofs_reused": [
|
||||
"iva-l1-g6h-qa-20261024.json"
|
||||
],
|
||||
"authorization": "Tempo explicitly deploy2359a88d by existingGit,preserve concurrentchanges and check installeddelta only;keep decision/list/plan/scope associated with result",
|
||||
"scope": "P060 only,two treatments un_development_exemption/un_development_reduction,samebranch;decision/list/plan/scope references in immutable calculation inputs/report;request not grant;no extension to other goods/operations/periods",
|
||||
"preservation": "77priorclosures and partialP084/P085 preserved;accepted QA reused;freshbackup/realisolatedrestore beforeinstallation;installeddelta only",
|
||||
"partial_P084_P085": "Already available for preparation/conditional simulation only,benefits pending;no closure in this release",
|
||||
"limits": "L1open;P00105/06;beveragesL2/L3;importclassification separate fromserviceVAT/deduction/field11;Stats/AIdeferred",
|
||||
"containment": "l1-g6h-readonly-rollback-20261024.patch,checked only,not applied;blocks newP060classification only,preserves readers/history and otherbranches",
|
||||
"authenticated_preflight": {
|
||||
"installed": {
|
||||
"status": "installed",
|
||||
"commit": "9b26217dec945fe07b665c6ad7638a965bf104a9",
|
||||
"release": "/var/www/investmoz-homologacao/releases/9b26217dec945fe07b665c6ad7638a965bf104a9-80907805",
|
||||
"previous_release": "/var/www/investmoz-homologacao/releases/78c9f4a356d5eaf590d8d82168228a2f84b1f633-a865ec5f",
|
||||
"database_migrations": 0,
|
||||
"content_imports": 0
|
||||
},
|
||||
"current_link": "/var/www/investmoz-homologacao/releases/9b26217dec945fe07b665c6ad7638a965bf104a9-80907805",
|
||||
"release_revision": {
|
||||
"commit": "9b26217dec945fe07b665c6ad7638a965bf104a9",
|
||||
"branch": "main",
|
||||
"built_at": "2026-10-24T19:13:31.576700+00:00",
|
||||
"manifest_sha256": "713be11fd1eee3f6ccc10f850260dbcc91e98577eb1e124b2fd0dacdaec9ecee"
|
||||
},
|
||||
"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-g6h-delivery-20261024/backup",
|
||||
"target": {
|
||||
"database": "teste_investidor",
|
||||
"port": 5432
|
||||
},
|
||||
"tables": 174,
|
||||
"files_verified": 369,
|
||||
"dump_sha256": "6f6e23986cf21dffca468eaa8ba8b1493150a8eec78a5de238a9fc25d028a5c6",
|
||||
"files_sha256": "6d7a2cdeede7f11edcb5f9a94935a1d79a50ce8b6f5bf86ef279db5ef25d086a",
|
||||
"restore_verified": false
|
||||
},
|
||||
"restore": {
|
||||
"restore_verified": true,
|
||||
"tables_verified": 174,
|
||||
"container_network": "none",
|
||||
"database": "l1_g6h_restore_20261024",
|
||||
"port": 55441,
|
||||
"source_dump_sha256": "6f6e23986cf21dffca468eaa8ba8b1493150a8eec78a5de238a9fc25d028a5c6",
|
||||
"active_database_writes": 0
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
--- a/resources/js/lib/iva-import-exemptions.ts
|
||||
+++ b/resources/js/lib/iva-import-exemptions.ts
|
||||
@@ -102,6 +102,7 @@
|
||||
}
|
||||
export function importExemptionCurrent(draft:Record<string,unknown>,book:ImportExemptionBook):boolean {return !!book.result&&book.result.sourceKey===key(draft,book);}
|
||||
export function recordImportExemptions(draft:Record<string,unknown>,book:ImportExemptionBook):ImportExemptionBook {
|
||||
+ if(book.rows.some(row=>isDevelopmentImport(row.treatment)))throw new Error('Novas classificações P060 temporariamente suspensas; 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 importações com identificadores distintos; versões anteriores conservadas.');
|
||||
const result:ImportExemptionCalculation={version:importExemptionVersion,revision:(book.result?.revision??0)+1,calculatedAt:new Date().toISOString(),opportunity:acquisitionScope(draft),location:JSON.stringify(draft.selection_labels??{}),sourceKey:key(draft,book),source:[...new Set(book.rows.map(row=>importRuleSource(row.treatment)))].join(' | '),inputs:structuredClone(book.rows),rows:book.rows.map(row=>evaluateImportExemption(row,draft.currency))};
|
||||
return {...book,result,history:[...(book.history??[]),...(book.result?[book.result]:[])]};
|
||||
Reference in New Issue
Block a user