docs(iva): record partial Tempo review and clarify QA save recovery controls

This commit is contained in:
2026-10-24 16:33:05 +02:00
parent d76078a81f
commit 0304612093
4 changed files with 68 additions and 6 deletions
@@ -7146,5 +7146,52 @@
},
"P001": "05/06only",
"L1_complete": false
},
"iva_l1_g2l_manual_partial_controls_20261024": {
"candidate": "744682835a91f08aece9258380466ae746bc7353",
"manual_observation": {
"source": "Tempo, observation reported in conversation,24/10/2026",
"status": "partial_reading_and_viewing_no_failure_observed",
"save_recovery_buttons": "not_identified",
"save_recovery_report_demonstrated": false,
"individual_checklist_results_inferred": false
},
"diagnosis": "QA harness: local autosave, technical file-write button, seed restoration and static report; no clear recovery action. Not evidence of a portal persistence regression.",
"QA_only_correction": [
"Visible numbered save/recover/report controls",
"Explicit synthetic file persistence, not portal database",
"Success/error/date status",
"Confirm recovery before replacing divergent entries",
"Report generated from recovered snapshot, not static HTML"
],
"verification": {
"QA_page_build": "passed",
"temporary_file_save_recover_and_report": "passed",
"accepted_fiscal_tests_repeated": false,
"portal_API_retested": false,
"browser_access_attempted": false,
"visual_proof_claimed": false,
"API_persistence_proof": "Previously accepted, reused; separate from synthetic file persistence"
},
"artifacts": {
"qa.tsx": "742bdeee5ab5c0f63610c897255394902ecfd33d04a174169c22bdf77e63e61d",
"vite.config.ts": "19f03652a46fb89bb05af8e62e6166ab05df3c5e6f217b786e94c6fd52332fa1",
"qa-state.mjs": "07e58b0667acf635332f55d00b511b3c747e8d76759ab187f0e910beb66c67d2",
"qa-state.test.mjs": "e94039cd36e1a0d8061183ddd47063d150ba7c8d5951ac1abe2b2e151f254adb"
},
"production_runtime_hashes_unchanged": true,
"G2L_closed_QA": false,
"G2K": "completed_QA_preserved",
"counts": {
"delivered": 34,
"demonstrated_QA": 1,
"functional_open": 97,
"of_which_P035_visual_pending": 1,
"documentary": 1,
"total": 133
},
"homologation_reference": "e45a1394",
"P001": "05/06only",
"L1_complete": false
}
}
@@ -56,7 +56,8 @@
],
"QA": {
"G2K": "8882dc54/1fe74256;accepted proofs reused",
"G2L": "4frontend+API1/29;types/buildpassed;12frozenbookscurrentwithoutrecalculation;UI/reportvisualpending"
"G2L": "4frontend+API1/29;types/buildpassed;12frozenbookscurrentwithoutrecalculation;UI/reportvisualpending",
"review_controls": "Same local origin; explicit synthetic file save/recover, divergence confirmation, report from recovered snapshot; build and direct temporary-file test passed; visual verification still pending; portal API proof separate and reused."
},
"visual_gate": {
"origin": "http://127.0.0.1:18639",
@@ -85,8 +86,14 @@
"authority": "Express Tempo instruction,24/10/2026",
"manual_Tempo": {
"accepted": true,
"status": "awaiting_observed_results",
"observations": null
"status": "partial_observation_save_recovery_pending",
"observations": {
"source": "Tempo, observation reported in conversation,24/10/2026",
"status": "partial_reading_and_viewing_no_failure_observed",
"save_recovery_buttons": "not_identified",
"save_recovery_report_demonstrated": false,
"individual_checklist_results_inferred": false
}
},
"Codex_browser": {
"accepted_after_tool_permission_review": true,
@@ -22,7 +22,15 @@ Reutiliza contexto/localização,moeda,estabelecimento,valor,representação do
APIprivada POST→GET naQAisolada `simulator_fiscal_delta_20261021_test:55441`,com guarda de destino e transacção revertida:1teste/29asserções. Amostra10linhas de100MZN:07=800,00;05=200,00;IVA0,00;contexto321/Manica/2026-09. Duas linhas usam os IDs existentes de tomate/insecticidas após continuidade explícita;mistura comcenteio e leite industrial têm fundamento próprio. Modelo eHTML recuperados com origens/páginas/versão;nenhuma conferência visual desseHTML alegada. Exportadores Word/PDF eprecisão aceites reutilizados,inalterados.
Falta a observação dirigida da pesquisa/selecção de posição, das condições e informação em falta, e da gravação/recuperação com correspondência no relatório; a continuidade aplica-se quando a posição escolhida a apresenta. Decisão expressa da Tempo nesta passagem: a observação pode ser registada como **verificação manual pela Tempo**, separada dos testes automáticos, ou ser feita pelo Codex após revisão da permissão da ferramenta. A autorização na conversa não altera essa permissão guardada. O impedimento da ferramenta não demonstra falha do portal. Não repetir os testes aprovados nem contornar a restrição. Ainda não foram comunicados resultados da passagem manual: G2L permanece aberto, sem atribuir uma prova à Tempo por antecipação. Artefactos privados `outputs/iva-l1-g2-agro-annex-20261024/`.
Falta a observação dirigida da pesquisa/selecção de posição, das condições e informação em falta, e da gravação/recuperação com correspondência no relatório; a continuidade aplica-se quando a posição escolhida a apresenta. Decisão expressa da Tempo nesta passagem: a observação pode ser registada como **verificação manual pela Tempo**, separada dos testes automáticos, ou ser feita pelo Codex após revisão da permissão da ferramenta. A autorização na conversa não altera essa permissão guardada. O impedimento da ferramenta não demonstra falha do portal. Não repetir os testes aprovados nem contornar a restrição. A Tempo comunicou observação parcial: não encontrou falhas no que leu e observou, mas não identificou botões de gravação/recuperação. Isto não demonstra essas acções nem autoriza atribuir aprovação individual às verificações não descritas. G2L permanece aberto. Artefactos privados `outputs/iva-l1-g2-agro-annex-20261024/`.
### Observação manual parcial e correcção da demonstração
A leitura do código confirmou uma limitação do apoio de QA: as edições eram mantidas automaticamente no navegador, o botão técnico apenas escrevia um ficheiro e o relatório ligado era estático. «Restaurar exemplo sintético recuperado» repunha a fixture inicial, não recuperava uma gravação feita pela pessoa. A causa aqui identificada é da demonstração; não se declara uma falha nova da persistência do portal. O simulador existente tem gravação automática com estado visível, «Guardar e continuar mais tarde» e recuperação pela identidade do rascunho; a prova privada POST→GET de G2L permanece válida e separada.
Na mesma origem QA `http://127.0.0.1:18639/`, os controlos ficam destacados no topo: **1. Guardar exemplo QA → 2. Recuperar gravação QA → 3. Abrir relatório da gravação recuperada**. A gravação é explicitamente um ficheiro sintético local, sem base de dados do portal; apresenta confirmação/data e erros. A recuperação lê esse ficheiro e pede confirmação antes de substituir entradas divergentes. O relatório usa exclusivamente o snapshot recuperado, com oportunidade e data da gravação, em vez do HTML estático. O cálculo continua no botão existente «Calcular e guardar operações IVA»; a gravação QA não recalcula nem inventa regras. O exemplo inicial e os artefactos API aceites não foram substituídos.
Verificação nova limitada ao apoio QA: compilação da página e ensaio directo de armazenamento em directório temporário, recuperação integral, conservação após gravação inválida e relatório derivado do recuperado passaram. Não foi acedida a origem por outro mecanismo, nem exercido controlo de navegador; não se declara prova visual nem um novo ensaio da API. Falta observar os controlos e a correspondência no relatório; os restantes pontos sem descrição individual da Tempo conservam o seu estado, sem repetição dos ensaios fiscais aceites. A Tempo pode actualizar a página existente; não é necessário refazer a leitura já realizada. Homologação e candidata funcional inalteradas.
### Entrega conjunta preparada, ainda não disponibilizada
File diff suppressed because one or more lines are too long