Record scoped ISPC installation with fresh restore and verified preservation of L3

This commit is contained in:
2026-10-25 17:31:20 +02:00
parent aa03d346ba
commit 0ce373670f
6 changed files with 439 additions and 5 deletions
@@ -27350,6 +27350,23 @@
"backup_restore": "fresh execution still required",
"main_or_active_changed": false,
"report": "docs/investmoz/simulations/ispc-l4-prepared-delivery-20261025.json",
"remaining_specific": [
"Operações ocasionais próprias3(3–4)enquanto sujeito passivo,distintas da retenção do adquirente;mantidas indeterminadas no percurso específico.",
"Aquisições acima limiteglobal2.500.000:correspondência do tratamento próprio;nãoliquidar5%porpresunção.",
"Formulário/modelo,instruções eprocedimentos da regulamentação2026;relatório depreparação não édeclaraçãosubmetida. Aviso primário do Governo confirma aprovação de novo regulamento,mas não contém articulado/modelos: https://portaldogoverno.gov.mz/governo-introduz-alteracoes-nos-regulamentos-fiscais-para-reforcar-eficiencia-tributaria/ . Sem impor segunda validação jurídica ou repetir pesquisa sem nova evidência."
],
"superseded_by": "ispc_l4_delivered_20261025"
},
"ispc_l4_delivered_20261025": {
"status": "installed_scoped_habitual_quarterly_ISPC_and_delta_verified",
"commit": "6af7092e83b9b3932712aa7a9f527393fcec4da8",
"previous": "fa32a2b9",
"report": "docs/investmoz/simulations/ispc-l4-delivery-20261025.json",
"restore_verified": true,
"tables": 174,
"files": 369,
"L3_preserved": true,
"ISPC_integrally_completed": false,
"remaining_specific": [
"Operações ocasionais próprias3(3–4)enquanto sujeito passivo,distintas da retenção do adquirente;mantidas indeterminadas no percurso específico.",
"Aquisições acima limiteglobal2.500.000:correspondência do tratamento próprio;nãoliquidar5%porpresunção.",
@@ -0,0 +1,397 @@
{
"status": "installed_scoped_habitual_quarterly_ISPC_and_delta_verified",
"authorization": "Tempo25/10:concluir instalação6af7092e peloGit combackup/restaurofresco,conferirdelta,preservarL3eprovasaceites;ISPCnãoéintegralmenteconcluído.",
"candidate_installed": "6af7092e83b9b3932712aa7a9f527393fcec4da8",
"previous_installed": "fa32a2b9e127da9c4d764dd99ef58ee43b770aa6",
"prepared_receipt": "ispc-l4-prepared-delivery-20261025.json",
"authenticated_preflight": {
"free_bytes": 7635865600,
"existing_pipeline_minimum_bytes": 5368709120,
"space_guard_satisfied": true,
"installed": {
"status": "installed",
"commit": "fa32a2b9e127da9c4d764dd99ef58ee43b770aa6",
"release": "/var/www/investmoz-homologacao/releases/fa32a2b9e127da9c4d764dd99ef58ee43b770aa6-ad33eeab",
"previous_release": "/var/www/investmoz-homologacao/releases/7ad187f9f0745245268e3ed5317547a96b4700f3-066618f1",
"database_migrations": 0,
"content_imports": 0
},
"current_link": "/var/www/investmoz-homologacao/releases/fa32a2b9e127da9c4d764dd99ef58ee43b770aa6-ad33eeab",
"release_revision": {
"commit": "fa32a2b9e127da9c4d764dd99ef58ee43b770aa6",
"branch": "main",
"built_at": "2026-10-25T15:12:37.806036+00:00",
"manifest_sha256": "cddac25dc66b3e555f2380cf3a9d4b2da6501cd03927c183c832a05b0ee5c993"
},
"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"
},
"fresh_backup": {
"stage": "/var/backups/investmoz-ispc-l4-delivery-20261025/backup",
"created_at": "2026-10-25T15:25:16Z",
"target": {
"database": "teste_investidor",
"port": 5432
},
"tables": 174,
"files_verified": 369,
"dump_sha256": "77ba24736ff574d9273845359db90d1a032ff0f39d7f9195efaeff842d5b5857",
"files_sha256": "59917d3f0420dc8ede0562da70ae5f67877aa99f77313950f9e1d840b7505e3b",
"restore_verified": false
},
"isolated_restore": {
"restore_verified": true,
"tables_verified": 174,
"container_network": "none",
"database": "ispc_l4_restore_20261025",
"port": 55441,
"source_dump_sha256": "77ba24736ff574d9273845359db90d1a032ff0f39d7f9195efaeff842d5b5857",
"active_database_writes": 0
},
"installed_protected_delta": {
"installed": {
"status": "installed",
"commit": "6af7092e83b9b3932712aa7a9f527393fcec4da8",
"release": "/var/www/investmoz-homologacao/releases/6af7092e83b9b3932712aa7a9f527393fcec4da8-647c8e2e",
"previous_release": "/var/www/investmoz-homologacao/releases/fa32a2b9e127da9c4d764dd99ef58ee43b770aa6-ad33eeab",
"database_migrations": 0,
"content_imports": 0
},
"runtime_files_verified": 9,
"L3_unchanged_runtime_files_verified": 11,
"documentary_files_verified": 17,
"persistent_files_and_env_verified": 369,
"tables_compared": 174,
"changed_tables": {
"cache": {
"before": {
"rows": 106,
"checksum": "81ca74112a72e3638ad335678ebfd0ef"
},
"after": {
"rows": 106,
"checksum": "e799b80b260c8c23326c72a5d7c52881"
}
},
"sessions": {
"before": {
"rows": 156,
"checksum": "5b29e80e2877c2e0bf0c81e046230987"
},
"after": {
"rows": 157,
"checksum": "e83a47d5ba184b55f1680f52ff7e0993"
}
}
},
"preserved_counts": {
"published_fiches": 29,
"relations": 28,
"geometries": 408
},
"migration_count": 0,
"content_imports": 0,
"comparison_role": "postgres_before_and_after;sameexportedsnapshotbaseline;noapplicationRLSvisibilityinference",
"writes_by_verification": 0
},
"operational_delta": {
"status": "operational_delta_reconciled",
"comparison_identity": "postgres before/after;isolated restored baseline;no RLS visibility inference",
"cache": "queue:restart value/expiry and request-throttle counter/timer pair;no deleted cache rows",
"sessions": "anonymous sessions created by exact delivery verification user-agent",
"delta": {
"cache": {
"before_rows": 106,
"after_rows": 106,
"changes": [
{
"key_sha256": "8d6ea77eb4b34d86d207362d583cfa8bf2880b907becd9b00398964482c6b4bd",
"kind": "updated",
"fields": [
"expiration"
],
"key_pattern": "investemoz-cache-{hash}",
"is_queue_restart_key": false,
"expiration_unchanged": false,
"throttle_timer_pair": true
},
{
"key_sha256": "2f251473865d14b953236ab95b1521764754d76abd79b58ca7d38c96dfe2fab1",
"kind": "updated",
"fields": [
"value",
"expiration"
],
"key_pattern": "investemoz-cache-{hash}:timer",
"is_queue_restart_key": false,
"expiration_unchanged": false,
"throttle_timer_pair": true
},
{
"key_sha256": "7f7dd83f47f5bf404d55e6e9f1367948721579970b195680645e356031a070ff",
"kind": "updated",
"fields": [
"value",
"expiration"
],
"key_pattern": "investemoz-cache-illuminate:queue:restart",
"is_queue_restart_key": true,
"expiration_unchanged": false,
"throttle_timer_pair": false
}
]
},
"sessions": {
"before_rows": 156,
"after_rows": 159,
"changes": [
{
"key_sha256": "5045187d392f685b58ae0ce1749c84eb5a30c5ab441aa0e65cfc6d905d0180fa",
"kind": "added",
"fields": [
"id",
"ip_address",
"user_agent",
"payload",
"last_activity"
],
"anonymous_user": true,
"delivery_user_agent": true
},
{
"key_sha256": "3d45feddb6a0eafd7d40e3efe516866803e4432d922c6a6b6e839276d8461075",
"kind": "added",
"fields": [
"id",
"ip_address",
"user_agent",
"payload",
"last_activity"
],
"anonymous_user": true,
"delivery_user_agent": true
},
{
"key_sha256": "712b82ddcfb6f6af6a4ea5937ae2d5195976cf4c808e6202a4b234eef1560210",
"kind": "added",
"fields": [
"id",
"ip_address",
"user_agent",
"payload",
"last_activity"
],
"anonymous_user": true,
"delivery_user_agent": true
}
]
}
},
"business_tables_to_confirm_separately": 172,
"active_data_writes_by_comparison": 0,
"restore_network": "none"
},
"installed_public": {
"status": "installed_delta_verified",
"served_revision": {
"commit": "6af7092e83b9b3932712aa7a9f527393fcec4da8",
"branch": "main",
"built_at": "2026-10-25T15:29:39.962545+00:00",
"manifest_sha256": "0761702f0aa0f54dd4e7dac14efadf290830c52a5762a97733d82f5332fb44a8"
},
"manifest_hash_matches": true,
"compiled_delta_markers": {
"ISPC — enquadramento e opção": [
"assets/services-tj9wihZS.js"
],
"ISPC — apuramento trimestral": [
"assets/services-tj9wihZS.js"
],
"ISPC — retenção em aquisições ocasionais": [
"assets/services-tj9wihZS.js"
],
"Calcular e guardar apuramento trimestral ISPC": [
"assets/services-tj9wihZS.js"
],
"Conferir e guardar retenção ISPC": [
"assets/services-tj9wihZS.js"
],
"Repartição do IVA documental em MZN": [
"assets/services-tj9wihZS.js"
],
"Reconciliação da dedução anterior": [
"assets/services-tj9wihZS.js"
],
"Cálculos indeterminados e condições para resolver": [
"assets/services-tj9wihZS.js"
],
"Preparação dos quadros L3 e formalidades": [
"assets/services-tj9wihZS.js"
],
"Calcular e guardar restituição E": [
"assets/services-tj9wihZS.js"
],
"Calcular e guardar acompanhamento D": [
"assets/services-tj9wihZS.js"
],
"Calcular e guardar substituições C": [
"assets/services-tj9wihZS.js"
]
},
"assets": [
{
"file": "assets/project-dossier-document-DlW49dDv.js",
"status": 200,
"sha256": "7002e22485098102c9a49e6f637a8818a4ecb153cf58f9c9cfb377e1b8a3d5a0"
},
{
"file": "assets/simulation-form-BqVD91Ek.js",
"status": 200,
"sha256": "85cbd533c5bc92af5a448db71da006d4346d2d0adb09dde825db0aa19ad5048c"
},
{
"file": "assets/project-dossier-B9kwzlsI.js",
"status": 200,
"sha256": "c2b62654e0a286c0dfb16a44f3aac513064c8db305cccc827388de35cc6c720f"
},
{
"file": "assets/services-tj9wihZS.js",
"status": 200,
"sha256": "9e88d806f7c8e7193dda407ba1efe8bf720e5eeb76ca40798f3e6c4914e57f4b"
}
],
"simulator_status": 200,
"simulator_entry": "assets/app-CkfkH6Xv.js",
"existing_fiscal_availability": {
"data": {
"enabled": true,
"coverage_start": "2026-01-01",
"coverage_end": "2026-12-31",
"message": "IVA geral sobre base líquida disponível; enquadramento declarado."
}
},
"synthetic_private_writes": 0,
"method": "Read-only installedrevision/manifest/newcompiledcatalogueandreaders/simulatorentry;acceptedQAproofsreused"
},
"pipeline_status": {
"service": "ExecMainStatus=0\nActiveState=inactive\nSubState=dead\n",
"installed": {
"status": "installed",
"commit": "6af7092e83b9b3932712aa7a9f527393fcec4da8",
"release": "/var/www/investmoz-homologacao/releases/6af7092e83b9b3932712aa7a9f527393fcec4da8-647c8e2e",
"previous_release": "/var/www/investmoz-homologacao/releases/fa32a2b9e127da9c4d764dd99ef58ee43b770aa6-ad33eeab",
"database_migrations": 0,
"content_imports": 0
},
"latest_report": {
"status": "installed",
"commit": "6af7092e83b9b3932712aa7a9f527393fcec4da8",
"release": "/var/www/investmoz-homologacao/releases/6af7092e83b9b3932712aa7a9f527393fcec4da8-647c8e2e",
"previous_release": "/var/www/investmoz-homologacao/releases/fa32a2b9e127da9c4d764dd99ef58ee43b770aa6-ad33eeab",
"database_migrations": 0,
"content_imports": 0,
"requested_commits": [
"6af7092e83b9b3932712aa7a9f527393fcec4da8"
],
"finished_at": "2026-10-25T15:29:42.957691+00:00"
},
"log_file": "1792941995601985924.log",
"summaries": [
"OK (1 test, 3106 assertions)",
"built in 31.63s",
"OK (59 tests, 317 assertions)",
"# tests 782",
"# pass 782",
"# fail 0"
],
"log_bytes": 227445
},
"archived_old_build_dependencies": {
"status": "dependencies_archived_and_verified",
"versions": 8,
"free_before": 5531414528,
"free_after": 7635984384,
"receipt": "/var/backups/investmoz-build-dependencies-ispc-l4-20261025/receipt.json",
"protected": [
"/var/www/investmoz-homologacao/releases/fa32a2b9e127da9c4d764dd99ef58ee43b770aa6-ad33eeab",
"/var/www/investmoz-homologacao/releases/7ad187f9f0745245268e3ed5317547a96b4700f3-066618f1"
],
"active_or_previous_release_modified": false,
"source_data_backups_deleted": 0
},
"accepted_QA_proofs_reused": {
"prior_proofs": "L4-A12testes eL1/L2/L3/P001não repetidos;inventário eaceitações reutilizados",
"new_frontend": "13distinctpassed:10quarter/3withholding;frontend-final.txt",
"private_API": "1test/21assertions passed;loopback55441/simulator_fiscal_delta_20261021_test,DatabaseTransactions rollback;otheraccount404;api.txt",
"UI": "Componentesreais:avaliar/opçãoguardada→calcular→guardarficheiroQA→recuperar→relatório;persistênciaprivadaconferidaemAPIseparadamente;ui-recovered-report.txt/png",
"report_fix": "GrupoISPCmapeadoàsecçãofinanceira;testeactualdoexportadorincluiimposto/opção;ausênciaidentificadanademonstraçãoecorrigidaantesdeconcluir.",
"types": "exit0;types-final.txt",
"build": "exit0;build-final.txt",
"inventory": "outputs/ispc-l4b-20261025/preservation-before-tests.json;reutiliza8143ficheirosinventariadoseL1fechados"
},
"manual_functional_tests_repeated": false,
"pipeline_checks": "Existing Git process mandatory checks only;no new discretionary functional round.",
"example": {
"context": "opportunity:375;SYNTHETIC QA",
"option": "documentada2026-01-01",
"quarter": "2026/T2",
"prior_turnover_MZN": "100000",
"quarter_base_MZN": "200000",
"rate_percent": 12,
"tax_MZN": "24000",
"payment_MZN": "24000",
"declaration": "mantida",
"other_fiscal_books": "exactamente preservados"
},
"remaining_L4_specific": [
"Operações ocasionais próprias3(3–4)enquanto sujeito passivo,distintas da retenção do adquirente;mantidas indeterminadas no percurso específico.",
"Aquisições acima limiteglobal2.500.000:correspondência do tratamento próprio;nãoliquidar5%porpresunção.",
"Formulário/modelo,instruções eprocedimentos da regulamentação2026;relatório depreparação não édeclaraçãosubmetida. Aviso primário do Governo confirma aprovação de novo regulamento,mas não contém articulado/modelos: https://portaldogoverno.gov.mz/governo-introduz-alteracoes-nos-regulamentos-fiscais-para-reforcar-eficiencia-tributaria/ . Sem impor segunda validação jurídica ou repetir pesquisa sem nova evidência."
],
"L3": "Preserved;11runtimehashes,17originals and additive integrations verified. Specific residuals remain in existing matrix.",
"preserved_L3_amounts": {
"documentary_VAT_MZN": 16,
"deduction_this_route_MZN": 0,
"recognised_MZN": 12,
"received_MZN": 7,
"awaiting_receipt_MZN": 5
},
"residuals": "P001/P058awaitdefinedclarificationswithoutblocking;P084/P085closed;statistics/AIdeferred.",
"schema_migrations": 0,
"content_imports": 0,
"ISPC_integrally_completed": false,
"proof_hashes": {
"outputs/ispc-l4-delivery-20261025/preflight.txt": "985e4cabc9f4f80ee55f89aa9a20580c1bc3b691225241165b01cc66ba4b5d19",
"outputs/ispc-l4-delivery-20261025/backup.txt": "23f72466038eed5153c93408e5acd508b5c6a66fc0e4c3a9bd30a580367fe8ea",
"outputs/ispc-l4-delivery-20261025/restore.txt": "d0100e1378c2e0e8a4be61de640e0e331695721080bae16d8a7a708cf4d4eb83",
"outputs/ispc-l4-delivery-20261025/integration.txt": "d92b419bd0c57c7951d558039e1414acca4ec2abc47e5a9d2f2389b1401adf7c",
"outputs/ispc-l4-delivery-20261025/status-final.txt": "638710d6205b634b8ab8f8cf625ee308fb76c4fe7c21608130d2b79afba60e0c",
"outputs/ispc-l4-delivery-20261025/installed-protected.txt": "83231f0b6619828618188e7abb9337f6b5e92e4192f7e5a8bbf165f7d2b70a44",
"outputs/ispc-l4-delivery-20261025/installed-public-delta.json": "7b944512bd87b5fa99e83e554247f1567c5629481b2dcdf668b411f118849aa2",
"outputs/ispc-l4-delivery-20261025/operational-delta.txt": "e79fc1267ac6f06e0f2fe78a9ed00eb0cfc05b1ec1ab7bec92c61268e4acbd93",
"outputs/ispc-l4-delivery-20261025/compact-dependencies.txt": "236ebb16564acf706dd434186b20013b9c035dd201f5f728ebcaf1e3813e2053"
}
}
@@ -279,5 +279,7 @@
"base_and_scope": "DecisãoTempo:preservarL3fa32 eentregar apenas âmbitoQA6af.",
"disk_5_GiB": "Requisito técnico do processo de entrega já existente;conferido no código emexecuçãoL3,sem criar regra organizacional.",
"backup_freshness_30_minutes": "Escolha técnica do script de integração;expiração exige actualizar preflight/backup-restauro,sem nova aprovação organizacional."
}
},
"superseded_by": "ispc-l4-delivery-20261025.json",
"installation_followup": "6af7092e83b9b3932712aa7a9f527393fcec4da8"
}
@@ -1,5 +1,5 @@
{
"status": "QA_demonstrated_eligibility_option_quarter_calculation_private_recovery_and_report_not_installed",
"status": "installed_scoped_habitual_quarterly_ISPC",
"matrix_anchor": "AUD-SIM-INT02",
"scope": "Actividade habitual ISPC2026/MZN, enquadramento/opção, cálculo trimestral e retenção12(3–4) delimitada. Não é encerramento de operações ocasionais próprias ou formalidades sem correspondência de modelo.",
"source": {
@@ -81,12 +81,22 @@
"compatible_build": "exit0;outputs/ispc-l4b-20261025/compatible-build.txt",
"compatible_types": "exit0;outputs/ispc-l4b-20261025/compatible-types.txt",
"functional_proofs": "13frontend/API1-21/UIreport reused; no new functional round",
"installed": false,
"installed": true,
"functional_source_commits": [
"479b6681",
"1b7ccfee"
],
"candidate_commit": "6af7092e83b9b3932712aa7a9f527393fcec4da8",
"functional_candidate_commit": "49b448eb47df9ded3f906996e36c1d5ebd855741"
"functional_candidate_commit": "49b448eb47df9ded3f906996e36c1d5ebd855741",
"installed_at_preparation": false,
"installed_commit": "6af7092e83b9b3932712aa7a9f527393fcec4da8"
},
"QA_status_before_delivery": "QA_demonstrated_eligibility_option_quarter_calculation_private_recovery_and_report_not_installed",
"installation_followup_20261025": {
"status": "installed_scoped_habitual_quarterly",
"commit": "6af7092e83b9b3932712aa7a9f527393fcec4da8",
"receipt": "ispc-l4-delivery-20261025.json",
"QA_proofs": "preserved;no manual repetition",
"ISPC_integrally_completed": false
}
}
@@ -5794,3 +5794,11 @@ O candidato `6af7092e` foi preparado e publicado apenas no ramo `codex/ispc-l4-q
As provas QA aceites de cálculo, gravação privada, recuperação e relatório, assim como tipos e compilação da composição compatível, foram reutilizadas pelos respectivos hashes. Não houve nova ronda funcional. Prepararam-se os scripts guardados de comparação autenticada, backup, restauro isolado, integração Git sem force-push e conferência pública/protegida. Backup/restauro fresco e conferência de espaço continuam necessários na execução; o backup de L3 não foi apresentado como backup novo de L4. Esta preparação não instalou L4 nem alterou dados activos. Recibo: `ispc-l4-prepared-delivery-20261025.json`; pacote: `outputs/ispc-l4-delivery-20261025`.
L4 não fica integralmente concluído. Operações ocasionais próprias, aquisições acima do limite e formalidades de 2026 conservam os âmbitos e condições concretas registados. L3 mantém o saldo residual e a separação de 16 MZN documentais, zero de dedução nesta via, 12 reconhecidos, 7 recebidos e 5 por receber. P001/P058 aguardam os esclarecimentos previstos sem bloquear a entrega; P084/P085 permanecem fechados. Estatísticas e IA permanecem adiadas.
## 25/10/2026 — instalação do âmbito ISPC trimestral habitual
O candidato `6af7092e` foi integrado pelo Git e instalado sobre `fa32a2b9`. Foram conferidos backup/restauro fresco e isolado, nove ficheiros de aplicação de L4, onze ficheiros de L3 sem alteração, dezassete originais e os doze marcadores compilados de L4/L3. Os ficheiros persistentes e a configuração conservam os hashes do backup; as tabelas de negócio foram comparadas com a mesma identidade e contexto, sem inferir perda a partir de RLS. Diferenças operacionais de cache/sessões ficam explicitadas no recibo. Não houve migrações ou importações de conteúdo. As provas QA aceites foram reutilizadas; apenas os controlos obrigatórios do processo Git existente voltaram a executar, sem nova ronda manual.
Para assegurar espaço, dependências de construção de versões antigas foram compactadas em arquivo e verificadas antes de libertar a cópia descompactada. Versões activa e anterior, dados, originais, configurações e backups foram preservados. O recibo discrimina o arquivo e os respectivos controlos.
A equipa pode avaliar no portal o percurso habitual: elegibilidade/opção → cálculo trimestral → gravação → recuperação → relatório. O exemplo demonstrado mantém base de 200.000 MZN, taxa de 12% e imposto/prestação de 24.000 MZN. O ISPC não é apresentado como integralmente concluído: operações ocasionais próprias, aquisições acima do limite e formalidades de 2026 permanecem discriminadas. L3 e os seus residuais ficam preservados, incluindo 16 MZN documentais, zero de dedução nesta via, 12 reconhecidos, 7 recebidos e 5 por receber. P001/P058 aguardam os esclarecimentos previstos sem bloquear a sequência; P084/P085 permanecem fechados. Estatísticas e IA continuam adiadas. Recibo: `ispc-l4-delivery-20261025.json`.
File diff suppressed because one or more lines are too long