584 KiB
Rastreabilidade, utilização e formação
Território adaptado ao corredor — decisão funcional da Tempo, 23/10/2026
Revisão funcional 0025309b integrada pelo Git e disponível na homologação. Conferência do destino apenas de leitura: o serviço territorial para Maputo devolve exactamente as duas unidades existentes, sem consultar ou gravar um dossier real. A prova de recuperação e confirmação de Sofala/Dondo foi feita no dossier sintético QA, com indicação Dados confirmados. A prévia apresenta nomes e alterações úteis ao investidor, omitindo campos de identificadores internos.
Aplicada a tabela da Tempo como configuração do percurso existente (config/investment_corridors.php), usando os códigos e identificadores do cadastro territorial já aceite. Pemba–Lichinga: Cabo Delgado/Niassa; Nacala: Nampula; Vale do Zambeze: Tete/Zambézia; Beira: Sofala/Manica; Limpopo: Gaza; Maputo: Maputo Província e Maputo Cidade, conforme o esclarecimento final da Tempo. Só Nacala e Limpopo têm uma única província e a seleccionam automaticamente quando ainda não existe localização. Maputo exige escolher entre as duas unidades. Esta configuração funcional não declara novos limites geográficos nem altera os mestres, as associações ou as fichas publicadas.
Na preparação, cada oportunidade mantém a sua localização separada. O corredor inicial vem da fonte da ficha quando disponível; o investidor pode escolher outro corredor para o seu investimento, sem alterar a associação publicada da oportunidade. Uma mudança conserva o caminho ainda compatível; se a província deixar de pertencer ao corredor, retira os níveis territoriais dependentes e explica a alteração. A província única é proposta automaticamente; um território documentado ou previamente confirmado continua protegido pela confirmação de alternativa aplicável. A localização da primeira oportunidade alimenta os campos gerais existentes; outras escolhas permanecem identificadas separadamente.
Zonas e parques deste percurso só aparecem com território público documentado compatível, reutilizando a visibilidade, validade e vínculos existentes. Influência/proximidade não equivale a implantação. Uma indicação provincial de localização não é inventada como cobertura de todos os distritos; apenas âmbito legal documentado permite esse alargamento. Ausência de opções é distinta de erro de consulta, com nova tentativa. Ao mudar a localização, um parque que deixe de ser compatível é retirado e a razão aparece no formulário. Consulta não confirma lotes disponíveis, admissão ou benefícios; nenhum cálculo é activado.
Recuperação: o rascunho do formulário é guardado no payload cifrado do mesmo dossier, por actor, sem confirmar contexto, aumentar a versão funcional ou activar cálculos. Recupera escolhas, actividades e dados ao regressar, actualizar ou autenticar-se novamente. A gravação automática tem indicação de progresso/sucesso/erro e nova tentativa. Pedidos atrasados não substituem rascunhos mais recentes; conflito com alteração do dossier conserva o rascunho para revisão. Retirar uma ficha não a faz reaparecer ao actualizar a mesma entrada; referências novas vindas do catálogo continuam a ser acrescentadas. A confirmação normal guarda o contexto, preserva o histórico e retira o rascunho desse actor. Não há nova tabela, migration, papel, aprovador ou alteração da autorização existente.
Validação no servidor: recusa território fora do corredor tanto na prévia/confirmação como no rascunho; recusa parques sem compatibilidade documentada. Os filtros da API territorial aplicam a mesma configuração. A gravação protege o dossier e o actor, com controlo de concorrência, sem aceitar combinações só porque foram enviadas directamente à API.
Provas QA: suite de cinco testes de configuração, validação, recuperação/autenticação, conflitos, zonas e mudança de corredor — 90 asserções; quatro testes de continuidade de oportunidades também passaram na passagem completa anterior. Testes usam exclusivamente simulator_fiscal_delta_20261021_test:55441, com transacções revertidas. Tipos e build passaram. Navegador com conta/dossier sintéticos privados em QA: Beira oferece Sofala/Manica; Nacala selecciona Nampula; Maputo oferece as duas unidades; Sofala/Dondo recuperado depois de actualizar. Captura: outputs/preservation-inventory-20261023/corridor-adaptive-territory-QA.png. Nenhum dossier real foi usado para provas de gravação. As 34 oportunidades, Turismo de Inhambane, permissões e geometrias não foram alterados por esta implementação.
Continuidade entre escolha e preparação — 23/10/2026
Falha reportada pela Tempo: depois de criar o dossier para Florestas/Beira, o editor começava por uma avaliação do estado ainda não confirmado (contexto v0). A escolha solicitada vinha separadamente em source/requestedChoices; não era outro investimento, mas a avaliação do estado guardado vazio. A ligação do quadro voltava ao editor sem os parâmetros da escolha pendente, permitindo perder essa referência antes de confirmar. Não foi identificada nem corrigida por escrita uma troca de dados entre dossiers.
O editor passa a começar por Preparar investimento, pela oportunidade e pela localização por ficha. Retirado o quadro de avaliação do estado guardado deste ecrã de edição, incluindo a ligação que descartava a escolha pendente. Requisitos guardados só são apresentados quando correspondem às escolhas que estão no formulário. Botões coerentes: Criar dossier e preparar investimento, Rever dados antes de guardar, Guardar dados do investimento. A confirmação continua necessária para guardar alterações; abrir uma referência não altera o dossier.
Nos consumidores de avaliação, retirados números internos de contexto/versão, explicações de implementação, quadro genérico de ausência de zona e elementos sem título na lista de etapas. Mantidas condições úteis, fontes oficiais e limites efectivos do simulador. O exemplo real foi recuperado por GET com source=opportunity:53 no dossier indicado pela Tempo, sem guardar ou criar dados. Teste QA isolado: 20 asserções sobre recuperação da escolha e igualdade do contexto antes/depois da abertura. Tipos e build conferidos; sem migrations ou alterações de cálculo, autorização ou dados activos.
Revisão funcional 72262875 integrada pelo Git e conferida no navegador da homologação: título Preparar investimento, Florestas/Beira identificada, localização por escolher e botão Rever dados antes de guardar; o quadro de contexto v0 já não aparece. Mantido aberto o dossier existente com a referência solicitada recuperada, sem confirmar alterações. Captura: outputs/preservation-inventory-20261023/investment-preparation-continuity-homologation.png.
Dossier orientado ao investidor — 23/10/2026
Correcção da apresentação solicitada pela Tempo: o componente partilhado de documentos do contexto mostrava, por defeito, identidade técnica, versões, hashes, notas de permissões e mensagens de ausência de suporte. Era reutilizado na entrada, edição e consulta do dossier; a entrada repetia ainda a mesma oportunidade num bloco de origem técnica.
O investidor vê agora a escolha pelo título e respectiva ligação. Documentos de apoio só aparece quando existem documentos, com título, edição disponível, referência de secção e consulta do documento. Sem documentos, não se apresenta uma caixa vazia nem uma pendência genérica da biblioteca. Retirados também UUID, motor de cálculo, versões internas e chaves de origem dos resumos, prévia e consulta do dossier. Mantidas as informações operacionais relevantes: escolhas, localização, impactos da alteração, resultados que precisam de revisão, documentos e pedidos identificados por protocolo. As rotas e verificações de acesso são as mesmas; não há mudança de dados, histórico, fontes, permissões, cálculos ou publicações.
Tipos e build passaram. Revisão funcional 98474777 integrada pelo Git. Reproduzido o exemplo Florestas/Beira (opportunity:53) na homologação antes e depois da integração, sem criar ou alterar um dossier: agora apresenta apenas A sua escolha com o título e ligação, sem caixa vazia de documentos, versões ou chave técnica. Captura: outputs/preservation-inventory-20261023/investor-dossier-clean-presentation-homologation.png. Esta é uma correcção de apresentação nos componentes e páginas do percurso, não uma declaração de revisão integral do portal.
Explorar oportunidades por corredor — 23/10/2026
Disponível e conferido no navegador da homologação, revisão funcional 20349299: explorar Agronegócio por corredor. Conferidos os seis grupos, 34 resultados, acesso no início de Agronegócio e escolha dos IDs 54/64 de corredores diferentes, mantida depois do filtro Soja. Recibo da passagem.
Decisão expressa da Tempo: acrescentar o corredor como forma de explorar o catálogo, preservando vistas por sector, território e cadeia de valor, fichas únicas e percurso existente. Nova vista /oportunidades?sector=agronegocio&view=corridors, com acesso destacado no início de Agronegócio. Não há migration, cadastro duplicado ou alteração de publicações, associações, permissões, Turismo de Inhambane ou geometrias.
Cada grupo apresenta nome, número de oportunidades publicadas, localizações identificadas, cadeias e etapas/actividades. O lote usa as seis designações exactas da fonte aceite; não as funde com mestres semelhantes. Outras fichas usam as relações públicas já disponibilizadas pelo catálogo; proximidade não é tratada como pertença. Sem associação pública identificada, a ficha aparece em Outras localizações. Uma ficha em vários grupos mantém o mesmo ID e a selecção é única. Contagens de grupos podem sobrepor-se; não significam cadastros distintos.
Dentro do grupo, filtrar província, distrito e cadeia de valor; filtros mantêm escolhas anteriores, inclusive de outros grupos. Comparar as escolhidas reutiliza a comparação existente de até quatro fichas; essa capacidade não limita a escolha para preparar investimento. Preparar investimento com as oportunidades escolhidas envia todos os IDs ao mesmo dossier, onde se confirma a localização por ficha e se reutilizam os dados em licenciamento, terra e simulação. Filtrar a pesquisa não altera a localização da ficha nem escolhe silenciosamente uma implantação.
Lacunas reais: as 34 fichas não têm província/distrito de implantação identificados; a vista indica abrangência por indicar e não transforma nomes de corredores em limites territoriais. As actividades produtivas são apresentadas com o texto da fonte, sem inventar uma classificação de etapa. Etapas adicionais vêm apenas das relações públicas existentes. Os originais e a rastreabilidade permanecem internos.
Delta conferido: dois testes, 26 asserções (seis grupos e 34 IDs sem truncar à primeira página; relação múltipla com um ID; grupo residual; localizações conhecidas sem inventar faltantes). Build e tipos verificados. Navegador QA: escolha de duas fichas de Beira e Maputo, filtro Soja mantendo as escolhas e comparação das duas identidades. Reutilizadas as provas aceites da confirmação territorial e continuidade do dossier.
Apresentação sem notas internas — 23/10/2026
Correcção solicitada pela Tempo: a interface deve comunicar a tarefa e o conteúdo, sem narrar decisões de implementação. Simplificados o cabeçalho da gestão do lote, a entrada no roteiro e as escolhas de oportunidades. Na ficha pública, removido o alerta genérico de falta de data de validação; mantém-se o estado Em preparação e a indicação de que a execução depende das condições e autorizações aplicáveis.
A apresentação das 34 fichas elimina exclusivamente os parágrafos automáticos conhecidos de nome de ficheiro, hash e metadados vazios. Conserva a actividade, o corredor e a informação útil sobre definição de localização e condições. A mesma apresentação é usada na serialização HTML/API e na prévia. Não há alteração de dados, fontes, versões, permissões, auditoria ou publicação; textos posteriormente revistos pela equipa são preservados. As notas e originais continuam no cadastro interno. Esta correcção não declara revista a totalidade das páginas do portal.
Verificação: teste novo de apresentação/preservação (7 asserções), quatro testes do ciclo promocional e controlo de acesso passaram; tipos e build passaram; ficha conferida no navegador QA. A execução alargada encontrou três testes históricos incompatíveis com o estado actual da fixture (lote já divulgado e directório de contas excluído da candidata anterior); não são declarados aprovados nesta passagem nem foram alterados para ocultar essas diferenças.
Orientação do lote de Agronegócio — catálogo e selecção múltipla, 23/10/2026
Homologacao concluida, 23/10/2026: 34/34 fichas cadastradas e divulgadas como Em preparação, pela interface da conta real, com previa, motivo, confirmacao e MFA recente. Revisao servida e12ef6ad426ff6ebc4e7421a1ddbe7f184d77a55 (funcional c641b267), integrada pelo Git, sem migration. Catalogo publico, gestao unica e gestao do lote. A divulgacao nao autoriza execucao. Recibo final.
Delta final: IDs 31-64, sem duplicados; 34 resultados e escolha de duas fichas, IDs 64 e 63, no percurso existente. As 30 oportunidades anteriores, incluindo Turismo de Inhambane, permanecem exactamente iguais ao backup. Das 174 tabelas, 170 mantem checksum integral; alteracoes apenas em oportunidades (+34), auditoria (+102 eventos), cache e sessoes. Biblioteca (59 recursos), 408 geometrias, permissoes e simulacoes preservadas. Backup/restauro isolado verificado antes da operacao. Cadastro, edicao, recuperacao, previa, divulgacao, actualizacao e retirada usam o portal, sem comandos ou Codex nas operacoes correntes. Reutilizadas as provas QA do percurso, regras e historico; sem dossiers ficticios na homologacao.
Preservação conferida antes do cadastro: 172/174 tabelas iguais ao backup; apenas cache e sessões diferem. As 30 oportunidades preexistentes, biblioteca com 59 recursos, 408 geometrias, permissões e tabelas de simulação permanecem preservadas. A primeira comparação da aplicação, sem contexto de actor, mostrava vazias as tabelas de simulação sujeitas a RLS e originou um alerta incorrecto. A comparação posterior usou a mesma identidade de leitura do backup e confirmou igualdade integral dessas tabelas. Nenhuma reposição, eliminação ou alteração de política foi executada; a pausa técnica do observador foi desfeita e o deploy está activo.
Decisão expressa da Tempo nesta passagem: publicar as 34 fichas no catálogo de Agronegócio e permitir escolher uma ou várias, confirmar a localização por ficha, preparar o investimento com reutilização dos dados e consultar requisitos/documentos/entidades, simular e acompanhar no dossier autenticado. Corredores, clusters e projectos âncora enriquecem a análise e não são pré-condição de publicação; localização não activa benefícios fiscais. Não alterar Turismo de Inhambane. Esta orientação supera o estado privado do recibo QA anterior, conservado como histórico.
Conferência do existente e delta: o catálogo já comparava quatro fichas e o dossier já tinha 19 etapas, prévia/confirmação de contexto, mapas, reutilização no simulador/terra/Balcão, pedidos e histórico. Faltava transportar uma escolha múltipla identificada para esse mesmo dossier. Acrescentado opportunity_choices no contexto cifrado existente, sem tabela, migration, novo dossier paralelo ou novo papel. Cada escolha conserva ID, título, versão/hash, fonte, corredor documental e referência territorial própria. A escolha do catálogo persiste ao mudar de página; ao continuar um dossier, referências novas são acrescentadas às existentes, sem eliminar silenciosamente as anteriores. A comparação de quatro fichas permanece independente da escolha de investimento. A guarda de 100 referências por pedido é uma escolha técnica de tamanho, não nova decisão organizacional.
Percurso da equipa e do interessado:
- Na gestão única, abrir Rever o lote das 34 oportunidades de Agronegócio (
/minhas-oportunidades/lotes/agronegocio). Conferir o manifesto e cadastrar/recuperar privadamente. Depois, preparar a prévia dos 34 textos, rever por ficha e confirmar a divulgação com motivo e MFA recente. A publicação não depende de relações com mestres. Edição, actualização ou retirada individual continuam na divulgação promocional existente. - No catálogo, marcar Escolher para preparar investimento em uma ou várias fichas e usar Preparar investimento com as oportunidades escolhidas. Entrar normalmente, continuar um dossier autorizado ou criar um novo. Confirmar cada ficha e a localização no editor do mesmo contexto.
- Localização documentada é recuperada. Uma alternativa exige confirmação explícita e motivo; a ficha de origem fica intacta. Uma alternativa já confirmada não exige repetir a decisão enquanto se mantiver. Sem informação de implantação, escolher o nível territorial conhecido ou conservar a lacuna identificada; o mapa não inventa limite, parcela ou DUAT.
- Declarar as actividades efectivas por ficha. A prévia e o dossier apresentam requisitos por oportunidade: localização/geolocalização, acesso à terra/DUAT, ambiente, enquadramento sectorial e ramos industrial/comercial quando declarados, com fundamento, documentos, entidade e ligação à etapa existente. Reutilizadas as condições e fontes da preparação do investimento privado. Fontes adicionais de consulta: BAU — legislação, serviços BAU e quadro ambiental oficial. Categoria ambiental, modalidade de licença e competência concreta dependem de actividade, dimensão e local; não são deduzidas de um corredor. Água, florestas, pecuária e transporte mantêm visível a necessidade do procedimento sectorial específico quando não identificado no acervo aplicado. Não é nova validação genérica da fonte nem dispensa de licença.
- Confirmar a prévia. Título próprio e dados declarados são preservados; resumo/sector/local da referência principal são reutilizados. As outras fichas e localizações mantêm-se individualizadas: não se somam investimentos ou benefícios presumidos. Abrir as ferramentas e o acompanhamento pelas ligações do roteiro. O snapshot da simulação conserva o conjunto de escolhas, fontes e requisitos; a guarda textual foi aumentada de 20.000 para 1.000.000 caracteres para comportar o lote, sem mudança de schema. Mudança de actividade/local/escolha identifica resultados para revisão e preserva os valores e o histórico anteriores.
Provas do delta QA: sete testes específicos/de continuidade, 132 asserções; selecção múltipla, localizações distintas, recusa de alteração territorial silenciosa, não repetição da confirmação já aceite, recusa de fonte alterada após prévia, escopo de acesso, regras por actividade, histórico/resultados preservados e guarda das 34 escolhas no simulador. Prova adicional da operação de lote pela sessão HTTP normal: um teste, 15 asserções, incluindo manifesto divergente, prévia exacta de 34, repetição idempotente, recusa sem MFA/âmbito e preservação das restantes oportunidades. As 34 fichas foram efectivamente divulgadas em QA, como Em preparação; a simulação inicial de papéis QA não constitui autenticação real de homologação. Conferidos também no navegador 34 resultados e escolha de duas fichas com acção de preparação. Não repetidas as suites gerais aceites.
Disponibilização no destino: revisão servida inicial 761035ae; 30 oportunidades preexistentes preservadas no inventário. Conta real de cadastro e organização operadora localizadas pelas designações existentes, sem criar papéis ou contas. Backup/restauro fresco em /var/backups/investmoz-agribusiness-opportunities-20261023/backup: 174 tabelas e 369 ficheiros conferidos. A integração Git de código é separada do cadastro/divulgação autenticados pela página do lote. Sem migrations ou importação de ficheiros privados; os originais e artigos existentes permanecem no armazenamento. Reversão de visibilidade usa retirada auditada pela interface, sem restaurar a base nem apagar manifestações/dossiers posteriores; reversão de código deve preservar o novo contexto cifrado e as referências adicionadas. A conferência final do destino e o recibo devem ser registados abaixo após execução.
Correcção de âmbito — 34 oportunidades cadastradas e roteiro em QA, 23/10/2026
A lista informativa anteriormente instalada no artigo não cumpria o cadastro pedido pela Tempo. Esta correcção cria 34 fichas privadas reais na base QA isolada, recuperáveis pela gestão existente, com título, resumo e descrição da entrada, sector Agronegócio, nome exacto do corredor documental, fonte e hash do DOCX. Conserva as seis secções e os totais 5/6/6/7/5/5. Não modifica a homologação, os corredores mestres, dossiers anteriores ou o original do artigo. Não transforma a organização operadora no promotor dos investimentos. Implantação, área, montantes, promotores, viabilidade e licenças ausentes ficam explicitamente por completar; nenhuma correspondência com corredores de nomes mais amplos foi inferida.
Reutilizada a implementação QA de divulgação promocional da candidata 9d3bfa89, limitada ao fluxo funcional necessário. Não transportadas as alterações independentes da administração de contas. A prévia, divulgação, actualização e retirada usam as designações, âmbito e MFA existentes, sem novos papéis ou aprovadores. O resumo público é seleccionado explicitamente; preparação, contactos e documentos privados não são copiados automaticamente. Divulgação identifica Em preparação e não autoriza execução. Publicação documental e aprovação/publicação de uma ficha completa continuam operações distintas.
Guia curto da equipa em QA:
- Abrir a gestão única QA, entrar normalmente com a conta designada e abrir Minhas oportunidades. Pesquisar o título ou corredor; as fichas iniciais são privadas.
- Abrir Editar, completar/corrigir os dados disponíveis, guardar e reabrir. A origem documental aparece separadamente; seleccionar localização apenas quando houver informação suficiente. A referência textual de corredor não é uma parcela.
- Abrir Divulgação promocional, rever o texto público e a fonte, preparar a prévia e confirmar com motivo e MFA recente. A prévia conserva as lacunas e o estado Em preparação. Alterar a ficha privada não copia automaticamente dados para o resumo público: rever a selecção na divulgação.
- Depois de divulgar, a entrada correspondente no artigo aponta para a ficha individual. Nela, o interessado pode preparar uma manifestação de interesse ou escolher Iniciar ou continuar o roteiro deste investimento. O percurso existente permite seleccionar um dossier ou criar um novo, comparar e confirmar a referência; preserva o título que o interessado já deu ao seu investimento.
- Para corrigir o resumo divulgado ou retirá-lo, usar a mesma área de divulgação, com prévia e auditoria. A retirada remove a consulta pública e a ligação do artigo, preservando cadastro, preparação e histórico.
Provas do delta: dois testes sobre as 34 fichas, 534 asserções: abrir/editar, prévia, divulgação, ficha pública, origem de roteiro, correspondência das seis listas, actualização/retirada e repetição sem duplicados nem perda da edição. Teste adicional de interessado: 19 asserções, criação de dossier, comparação/confirmação da oportunidade, recuperação de título próprio/resumo/sector, abertura do roteiro e preparação da manifestação. Escritas desses testes revertidas por transacção: as 34 fichas permanecem privadas, não divulgadas como efeito do cadastro. Conferidos por comparação os registos preexistentes de oportunidades/auditoria, corredores, permissões, biblioteca e documentos. Verificação de tipos e build passaram. Trata-se de prova HTTP dos percursos usados pela interface, sem afirmar uma nova sessão manual de navegador ou repetir as suites gerais aceites.
Carregamento inicial executado uma vez por tools/register-corridor-agribusiness-qa.php, com guarda exacta de base/porta QA, actor e organização já designados, snapshot privado e chaves estáveis por entrada. A repetição recupera os mesmos IDs sem sobrescrever edições posteriores ou reactivar uma retirada. Esse carregamento técnico de instalação não é uma operação corrente da equipa. Editar, guardar/recuperar, pré-visualizar, divulgar, actualizar, retirar e iniciar/continuar o roteiro não exigem comandos nem Codex. Não há migration ou nova dependência. Disponibilização na homologação e transporte das 34 fichas continuam separados desta entrega QA; não foram executados nem autorizados por esta correcção. Recibo QA.
Agronegócio nos corredores — complemento de apresentação, 23/10/2026
Entrega QA recebida em entrega-agronegocio-corredores-20261023: cinco ficheiros conferidos pelos hashes do manifesto. Complementa exclusivamente /agronegocio, nas seis secções existentes: Pemba–Lichinga (5), Nacala (6), Vale do Zambeze (6), Beira (7), Limpopo (5) e Maputo (5), total 34 entradas. Reutilizadas as provas QA entregues (dois testes, 63 asserções e verificador offline do exemplar preservado); não constituem prova HTTP do destino.
Delta: serviço CorridorAgribusiness, fonte JSON com hash do DOCX e chamada adicional em LegacyContent::article. O ficheiro anterior de LegacyContent na homologação corresponde exactamente à base local; não há alterações posteriores a sobrescrever. Sem migration, importação, escrita de conteúdo, publicação de dossiers ou alteração dos nomes/cadastros de corredores. Originais e versões da biblioteca permanecem preservados; estas entradas são conteúdo informativo do artigo, não 34 novos dossiers executáveis.
Disponibilização pelo Git e mecanismo automático existente, com cópia privada do código/recibo anteriores em /var/backups/investmoz-agronegocio-corredores-20261023. Backup/restauro de dados já verificados nesta sessão em /var/backups/investmoz-preservation-inventory-20261023/backup; esta entrega não escreve na base. Reversão delimitada: retirar apenas a chamada de complemento, preservando alterações posteriores; não restaurar a base de dados. Conferir apenas o delta HTTP após a promoção da revisão.
Instalação concluída na homologação: revisão funcional 20a4099d10400496e19f03589b6383f512b48d9d, promoção automática terminada às 09h57 de 23/10/2026 (África/Johannesburgo). Página pública respondeu HTTP 200 com as seis listas e 34 entradas exactas. Remover apenas os acrescentos recupera exactamente o HTML anterior; imagem, metadados, origem, versão e hash do artigo permanecem iguais. Recibo do pipeline: zero migrations e zero importações. Recibo do delta HTTP. Nenhum dossier ou corredor foi criado, renomeado, fundido ou publicado por esta instalação.
Registo da prova QA anterior — agronegócio nos seis corredores
Registo histórico: a pendência de instalação indicada nesta prova foi resolvida pela conferência HTTP acima.
Fonte fornecida pela Tempo: investimentos nos corredores.docx, SHA-256 1473b06c48aa234e771660e3f2a51b9d2e4e1943bd52d878e0ae854ee6657055. Extraídas 34 entradas, conservando o texto das oportunidades e as seis designações do documento: Pemba–Lichinga (5), Nacala (6), Vale do Zambeze (6), Beira (7), Limpopo (5) e Maputo (5). Preparação em database/data/corridor-investment-opportunities.json; os rótulos de cadeia servem apenas para organizar as entradas. Âmbito confirmado pela Tempo: agronegócio; outros sectores serão acrescentados quando a informação estiver disponível.
Preservar os nomes dos corredores actualmente cadastrados, os dossiers, relações, aprovações e informações anteriores. Retiradas as associações inicialmente inferidas entre os seis nomes do documento e os quatro dossiers de âmbito mais amplo; a apresentação experimental na carteira foi retirada. A Tempo confirmou expressamente as seis designações separadas. Foram localizadas, com essas designações exactas e as letras a)–f), nas secções do artigo existente /agronegocio. A integração acrescenta a cada secção a sua lista de oportunidades logo após o parágrafo de cadeias prioritárias; a fonte do complemento é identificada em cada lista. Não renomeia, funde ou cria corredores, não altera os dossiers da carteira e não preenche outros sectores.
App\Services\CorridorAgribusiness complementa apenas a apresentação do artigo de agronegócio a partir do JSON; o exemplar original e a sua versão/hash permanecem intactos. Só corresponde a nomes exactos, seguidos pelo parágrafo existente de cadeias prioritárias. Não infere relações, limites, geometrias, projectos ou oportunidades cadastradas a partir de semelhança de nomes. A operação é idempotente e não escreve na base de dados. Artigos de outros sectores continuam no percurso anterior.
Conferência do delta: dois testes unitários, 63 asserções, incluindo separação de listas, nomes e texto anterior preservados, repetição sem duplicação e recusa de nomes de âmbito mais amplo. Verificador offline tools/verify-corridor-agribusiness.php executado sobre o exemplar real de Agronegócio, SHA-256 0929184a6d4645b9046512675394ad4f60575273f6dab0955f71cc7474a6a4e2: seis listas, 34 entradas, original inalterado e recuperação exacta da apresentação anterior ao remover apenas os acrescentos. A leitura do artigo pela biblioteca desta base QA devolveu 404; por isso, esta prova é sobre o exemplar real preservado e não demonstra consulta HTTP da biblioteca nem instalação na homologação. Sem suite geral repetida, migrations, publicação ou alteração remota. Para instalar basta o delta PHP/JSON; não há alteração de frontend ou necessidade de nova compilação. Estado: implementação QA concluída; disponibilização na homologação por executar.
Preservação do concluído — inventário e reposição, 23/10/2026
Prioridade expressa da Tempo: inventariar o que já estava concluído, identificar o que desapareceu e repor, antes de avançar com outras rondas de testes/validações. Actualizado o inventário existente dos 43 componentes com uma coluna de saldo actual; conservada também a matriz executável dos 17 percursos. Os componentes de interface ali referenciados existem no código actual. As entregas posteriores prevalecem sobre estados históricos: por exemplo, os incrementos 36–39 já não podem ser apresentados como ausentes, e o acervo editorial já não está genericamente desabilitado. Não se criou outra matriz/backlog nem se usou o inventário para exigir novamente aceitações anteriores.
Recortes concluídos a preservar, com os limites e recibos das secções próprias: gestão única e editorial documental; 20 artigos públicos e 28 rascunhos privados; sectores/Fintech e cartões educativos; navegação contextual e percurso adaptativo privado; recortes entregues de parques; cadastro e recursos das oportunidades; divulgação dos 30 resumos Inhambane em preparação; perfis/login/MFA; demarcação recuperada; recortes de tesouraria/exportações e consumidor IVA já entregues; instalação de Concursos e anúncios; e carteira documental agora reposta. A presença de código não encerra os critérios parciais de educação, integrações externas, participantes reais ou variantes fiscais. Não se criam dados de exemplo para preencher catálogos vazios, nem se transformam essas pendências em funcionalidades desaparecidas.
Perdas e reposições identificadas:
- Carteira, clusters, corredores e projectos âncora: 29 dossiers existiam em QA e homologação, todos em rascunho, enquanto os exemplares anteriores estavam publicados com aprovação
document_owner. Reposta a visibilidade de 15 projectos, 8 clusters e 6 corredores, sem nova importação. O catálogo público mostra novamente os 29 dossiers. Isto é divulgação documental informativa, não confirmação de execução, disponibilidade, financiamento ou promotor de cada projecto. - Demarcação territorial: a diferença anterior de geometrias já foi reposta em 22/10; a leitura actual conserva 408 limites. Não voltar a importar nem reabrir a prova aceite. As 26+147 correspondências pendentes e a inexistência de polígonos próprios de localidades permanecem lacunas reais, não novos desaparecimentos.
Causa delimitada da carteira: o importador actual cria os dossiers como rascunhos. O commit e65cb26901a5ca18862134b20e4c17b1f1003ec2, de 06/10/2026, retirou a opção portfolio:import --approval e o caminho que aplicava a aprovação documental do proprietário. A instalação noutro ambiente deixou de transportar/reconciliar essa decisão de divulgação. A leitura de 23/10 encontrou os 29 registos, 16 projectos, 8 clusters e 6 corredores preservados; não ocorreu eliminação desses mestres. Conteúdo, título e fonte dos 29 dossiers coincidem com os exemplares aprovados em 26/09 e conservados no snapshot de 07/10. Não há base para atribuir a um commit recente a data exacta em que desapareceram de um endereço específico.
Reposição executada: manifesto nominal de 29 originais, SHA-256 8d07007a2e1e8758d4741b4ac594f78d5943f71ad78b2daae7f85aefa9d2de4a; guarda contra exemplares arquivados, editados ou com versão/hash divergentes; reposição primeiro na base QA isolada e depois na homologação, pela sessão SSH autenticada. Mantidos IDs, conteúdos, fontes, mestres e relações. Apenas estado de divulgação, fundamento anterior, versão e data da reposição foram actualizados. 29 eventos auditados, sem atribuir uma nova aprovação ou um revisor fictício; a evidência original da Tempo é conservada. tools/restore-approved-portfolio-visibility.php é uma operação de recuperação delimitada, não um importador que publica automaticamente novos conteúdos e não uma tarefa editorial corrente.
Antes da escrita activa: backup fresco SHA-256 7b7a3a082e1259c53c321617eb84d10b544e5a211f5f708199026c4205d1c511; arquivo de ficheiros/configuração 0cc28141a081ce9d097735c7815b46f55d99300adf7361d936b857a24f897b86; restauro isolado de 174 tabelas, com 369 ficheiros conferidos. Depois: 171 tabelas inalteradas; diferenças somente em dossiers, auditoria e sessões. Biblioteca/documentos, 20 artigos públicos, 28 privados, geometrias e atribuições de papéis preservados. O observador do deploy foi retomado. A ponte de acesso antiga tinha processos locais concorrentes; foram encerrados os clientes desta tarefa e usada uma única ligação autenticada. Não se registaram credenciais.
Conferência limitada da reposição, sem suite geral: consulta anónima /carteira com 29 dossiers, projectos com 15, clusters com 8 e corredores com 6, todos HTTP 200. A antiga mensagem de carteira vazia fica superada por esta reposição. Links: carteira, projectos âncora, clusters, corredores. Recibo/inventário: preservation-inventory-20261023.json; manifesto de proveniência: approved-portfolio-visibility-20261023.json. Não se repetiram as provas funcionais aceites de outros módulos.
Preservação nas próximas entregas: usar este inventário e a instrução de 23/10 em AGENTS.md como referência anterior à alteração. Conferir o delta de código, schema, dados, configuração e permissões, explicando qualquer redução de disponibilidade. Uma reposição não apaga edições posteriores nem revoga aprovações antigas por omissão. Reversão deve preservar as novas versões e a auditoria; não substituir toda a base por um backup anterior. O conjunto parcial da matriz continua parcial no seu âmbito, sem retirar o que já foi entregue.
Guia curto — entrada única de gestão
Link da equipa: https://teste-investidor.tempo.co.mz/gestao-conteudos. Entre com a conta habitual e o seu MFA. As funções e âmbitos aprovados determinam os botões apresentados; não é necessário acesso à linha de comandos.
| Trabalho | Percurso pela interface |
|---|---|
| Oportunidades | Nova oportunidade → escolher promotor real e modalidade → preencher → Guardar rascunho. Recuperar em Gerir oportunidades e histórico; abrir a ficha, completar Imagens, documentos e localizações e Submeter para validação. O Validador usa a fila de revisão e as acções Iniciar validação, Guardar revisão especializada, pedir correcções ou Aprovar versão, conforme a tarefa atribuída. O Publicador usa a fila de publicação e Publicar no catálogo público na versão aprovada com visibilidade pública. A equipa conclui as funções que já lhe foram atribuídas; a criação não concede revisão nem publicação. |
| Documentos | Novo documento → escolher ficheiro e origem conhecida → Guardar em quarentena → conferir a análise indicada no ecrã → completar Registar documento na biblioteca → Guardar como rascunho. Recuperar pela pesquisa em Gerir conteúdos, versões e histórico; usar Editar metadados para rever; guardar as alterações e usar Publicar. Se o scanner comunicar falha, usar Tentar novamente; avaria persistente é manutenção técnica, não uma nova aprovação documental. |
| Legislação | Nova legislação → mesmo percurso documental, com tipo Legislação pré-seleccionado → registar entidade, número, edição, fonte, datas e situação conhecida → guardar → pesquisar/reabrir → rever metadados/associações → Publicar. Fonte oficial identificada mantém a aceitação da Tempo; não exige segunda certificação. A publicação permite consulta e não activa regras fiscais. |
Para retirar um documento, abrir o registo e usar Retirar da publicação; original e histórico ficam preservados. Para oportunidades, usar as acções de suspensão/arquivo apresentadas à função responsável. Não se apagam registos para os retirar do público.
Este guia descreve os percursos existentes; a instalação de código é manutenção pelo processo Git automático. Contas ainda não criadas conservam as designações aprovadas e não suspendem os acessos das contas existentes. Conferência real desta instalação registada na secção de entrega, abaixo; o guia não substitui essa evidência.
Parques — disponibilizados em18/10/2026
Revisão parques-integral-reconciliado-639ed9624a48 disponibilizada em https://portal-investidor.test, com autorização expressa da Tempo. Sete fontes (cinco funcionais e dois auxiliares gerados) e170 ficheiros de build; nenhuma migration executada. L1/140000, navegação/150000 e editorial160000 preservados. Backup/restauro fresco e preservação de dados conferidos. Os dados reais desconhecidos mantêm-se desconhecidos; não se encerram todos os requisitos da ficha pelo nome integral.
Gestão → ZEE, ZFI e parques → parque existente → Preparação privada → grupos Títulos, Fases e expansão, Lotes, Ocupantes, Ocupação e Cadeias de valor. Utilizar Adicionar/Editar dentro do grupo, Guardar preparação privada para recuperar depois; publicação permanece ação expressa separada. Consulta pública apresenta apenas a projeção autorizada. Uso informativo: não confirma disponibilidade, direitos, ocupação ou relações comerciais.
Na conferência ativa da conta Osmane Nala foram observados os grupos novos no parque Topuito e a ficha pública, sem alterar campos, guardar ou publicar. As provas de gravação/compatibilidade anteriores foram reutilizadas, sem repetição. Relatório e recibo ativos. A pendência técnica de reconciliar compilação/reversão e disponibilizar este recorte está concluída.
Gestão editorial autónoma — disponibilização autorizada em18/10/2026
Estado: disponibilizado no ativo https://portal-investidor.test, fora de manutenção. Revisão final editorial-MFA-164ba4bcd738 (164ba4bcd7389304f50b1043791607c38891b588058b9f32ce154a431e5be99c), descendente da candidata editorial f95dbc5e373f. A160000 foi instalada uma única vez, autenticada pela conta2 com MFA recente; recibo 2446fbf9-e160-4091-bb5b-b73f8f2b9bde. Coluna JSONB opcional conferida;16 tabelas preservadas; zero conteúdos alterados ou publicados nesta disponibilização.140000/150000/190000 continuam com um registo cada.
Confirmação recente sem novo login: Acervo → Estado da gestão editorial → Confirmar MFA e voltar à instalação, quando necessário. Código introduzido diretamente na página; sessão e conta preservadas; retorno fixo à prévia. O controlo mantém o prazo existente de15 minutos. Entrar no dashboard não comprova MFA recente. O estado instalado bloqueia repetição; a instalação não é uma tarefa editorial diária.
Observação no ativo: Acervo acessível à conta Osmane Nala, com carregamento, cadastro, metadados, Editar artigo e retirada. Aberto Editar artigo → Bens de Consumo e Franquias, recurso29: corpo legado pré-preenchido, imagens da biblioteca, Guardar artigo como rascunho e histórico visíveis. Nenhum campo alterado, guardado ou publicado. Isto comprova acesso/abertura; as operações de escrita foram demonstradas em QA e não repetidas no ativo. Carregamento visual integral continua não observado, conforme limitação abaixo.
Esta secção prevalece sobre os estados QA e observações históricas abaixo. A disponibilização não declara concluída a demonstração visual do carregamento. A rotina dos funcionários usa a interface e não depende do Codex, de extensão, de comandos de terminal ou de instalação técnica repetida.
Acessos dos funcionários
| Trabalho | Menu e acesso direto | Quem utiliza segundo as atribuições existentes |
|---|---|---|
| Criar/recuperar oportunidades | A minha conta e atividade → Minhas oportunidades / Nova oportunidade; lista, criação | Promotor no âmbito atribuído. O formulário de criação da conta Osmane Nala foi aberto por leitura, com seleção do promotor real/categoria e Guardar rascunho; nenhuma ficha foi guardada. |
| Rever/publicar oportunidades | Área de trabalho → filas autorizadas; revisão, publicação; gestão | Validador/Publicador, segundo âmbito e designação existentes. O registo administrativo não autoriza automaticamente todos os dossiers. |
| Sectores | Área de trabalho → Gestão → Catálogo de investimento / Gestão do portal → Sectores; abrir gestão | Gestores com manage-portal já atribuído. |
| Documentos, legislação e artigos | Área de trabalho → Gestão → Acervo documental; abrir acervo | Gestores com manage-portal já atribuído; artigos são adaptações ligadas ao mesmo registo documental. |
| Instalação editorial excecional | Acervo → Estado da gestão editorial; prévia/estado | Controlo de instalação existente e MFA da sessão. Uma vez instalada160000, a interface mostra Instalado e não oferece repetição. Não é tarefa diária de edição. |
Na cópia restaurada do destino, as atribuições operacionais ativas são de Osmane Nala(2) — Promotor e Validador; Aurora Chachuaio(14) — Promotor; Palmira Uamusse(15) — Validador nos âmbitos registados; Mario Melembe(16) — Publicador. São atribuições já existentes, não criadas por esta entrega. O âmbito efetivo e as decisões independentes do workflow continuam a determinar cada ação. A conta2 pode abrir a criação no percurso de Promotor; a sua lista de gestão sem casos no âmbito atual não prova ausência da funcionalidade. Não se partilham contas, credenciais ou MFA para substituir atribuições. Leitura das atribuições existentes.
Menu → botão → campos → resultado
| Conteúdo | Menu e botão | Campos / sequência | Resultado e recuperação |
|---|---|---|---|
| Oportunidade | Minhas oportunidades → Nova oportunidade → Guardar rascunho | Promotor real/categoria autorizada, título e campos aplicáveis; é permitido guardar incompleto. Abrir Imagens, documentos e localizações na ficha para gerir recursos. | Rascunho no servidor, mesmo ID recuperável pela lista noutra sessão. Guardar não submete nem publica. Reutiliza o percurso aceite, sem novo ensaio nesta disponibilização. |
| Oportunidade — revisão/publicação/retirada | Ficha → ações oferecidas ao papel/estado; filas de revisão/publicação | Submeter, corrigir, validar e publicar segundo o workflow existente; conferir os fundamentos/campos pedidos. Para suspensão/arquivo, usar a ação efetivamente oferecida àquele papel/estado, com motivo quando pedido. | Separação de preparação e projeção pública; histórico e decisões preservados. Arquivar/Restaurar dependem dos ramos já aprovados; não se apresenta exclusão como retirada genérica nem se encerram decisões antigas de restauro/SLA. |
| Sector | Sectores → Criar sector / Editar → Guardar | Nome, Slug, descrições, ordem, Activo e Publicar no catálogo. Para publicar, ambos estados devem permitir a apresentação; para retirar, desmarcar Publicar no catálogo e guardar. | Publicado aparece no catálogo e filtros públicos; retirado conserva cadastro/relações. Edição recuperável por Editar. Não presumir que Activo equivale a publicado. |
| Documento | Acervo → Receber documento em privado → Guardar em quarentena | Escolher ficheiro local; Entidade/autor e Origem HTTPS quando conhecidas. Depois Registar documento na biblioteca: Documento recebido, Título, Tipo, descrição/categoria/assunto, fonte/versão e enquadramento/direitos → Guardar como rascunho. | Original privado; scanner existente processa o ficheiro. Rascunho recuperável no acervo; falha ou pendência concreta surge no registo. O upload não publica. |
| Documento — editar/publicar/retirar | Acervo → registo → Editar metadados, Guardar alterações, Publicar ou Retirar da publicação | Corrigir dados conhecidos; conferir ficheiro, fonte, direitos e análise; publicar por ação separada. | Histórico/versionamento e original preservados. Após publicar, consultar no portal público; após retirar, consulta/download públicos recusados. Edição não equivale a alterar os bytes do original. |
| Legislação | Mesmo acervo → Tipo documental: Legislação | Título, descrição útil, entidade, número, fonte e datas conhecidas; indicar desconhecidos sem presumir vigência ou taxa fiscal. | Mesma recuperação/moderação documental. A aceitação das fontes oficiais mantém-se; publicação não ativa cálculos. |
| Artigo | Acervo → registo → Editar artigo → Guardar artigo como rascunho | Corpo em texto simples, parágrafos separados por linha em branco, imagem pública opcional da biblioteca. Título/autor/fonte em Editar metadados. Para novo artigo, reutilizar um registo ou carregar/cadastrar primeiro o seu original pelo mesmo acervo. | Corpo no mesmo registo, original intacto e versões no histórico. Reabrir Editar artigo recupera o corpo; original legado estruturado é pré-preenchido quando disponível. Guardar corpo retira a publicação até Publicar novamente no acervo. |
| Artigo — visitante/retirada | Documento publicado → Ler artigo, ou /artigos/{id}; retirada no acervo |
Conferir corpo/imagem e ligação ao documento original. Depois Retirar da publicação no registo correto. | Visitante consulta a adaptação publicada; após retirada, a rota devolve404. O original/histórico continuam preservados para a gestão. |
Limitações concretas
- Carregamento visual integral não demonstrado: automação recusada e seleção manual sem nome no formulário, segundo o operador. A causa não foi atribuída ao produto. Upload/scanner/cadastro/moderação/download foram demonstrados por HTTP; a seleção manual normal pode ser usada sem Codex, mas o seu sucesso concreto continua por observar. Isto não é bloqueio automático da disponibilização autorizada.
- Artigos em texto simples: corpo editorial é uma adaptação; não altera o original descarregável. Não inclui edição HTML livre. Imagens usam recursos públicos elegíveis existentes.
- Acesso por âmbito existente: gestão administrativa não concede todos os dossiers de oportunidades. As atribuições já aprovadas continuam aplicáveis; a entrega não inventa papéis nem elimina decisões materiais ainda abertas de restauro/modalidades/SLA.
Proposta única e revisão fixa. Autorização registada. Os fechos L1/navegação/sectores/limpeza documental permanecem preservados; parques integral continua separado.
Formação editorial em QA — candidata d5e7fda5e0d4
Estado de18/10/2026: código apenas em QA, http://127.0.0.1:18548, base editorial_20261018_test:55441. A migração 2026_10_18_160000_add_portal_editorial_content foi aplicada apenas nessa base. Os comandos novos abaixo ainda não estão no ativo. Usaram-se conta e conteúdos sintéticos. Não se repetiram L1, navegação ou os percursos anteriormente aceites.
Operação demonstrada por HTTP significa que o pedido passou pela aplicação, sessão/permissão, persistência e resposta esperada. Demonstrada na interface significa que o comando foi acionado e o resultado observado no navegador. Visível não comprova gravação. As contagens não representam horas consumidas ou requisitos globais encerrados.
| Menu → comando | Campos e sequência | Resultado esperado | Prova desta candidata |
|---|---|---|---|
| Área de trabalho → Gestão → Acervo documental → Receber documento em privado | Ficheiro; Entidade/autor e Origem HTTPS quando conhecidas → Guardar em quarentena | Original privado e análise pendente; nada publicado. Após a análise real, o registo pode ser preparado no formulário seguinte. | Upload e scanner real demonstrados por HTTP. O seletor de ficheiros no navegador ficou bloqueado pela extensão; submissão visual não observada. |
| Acervo → Registar documento na biblioteca | Selecionar Documento recebido; Título, Tipo documental, Descrição, Categoria/Assunto; Fonte/versão; Direitos, Classificação e restantes dados conhecidos → Guardar como rascunho | Registo privado recuperável. Não marcar uma informação desconhecida como confirmada. | Cadastro e recusa da consulta pública do rascunho demonstrados por HTTP. Controlos já observados na interface; nova submissão visual não demonstrada. |
| Acervo → registo → Editar metadados | Corrigir os campos correspondentes → Guardar alterações | Revisão incrementada e histórico preservado; versão antiga concorrente recusada. | Edição, persistência e conflito409 demonstrados por HTTP. Não equivale a alterar os bytes do original. |
| Acervo → registo → Publicar | Conferir ficheiro, fonte, direitos e análise; clicar no comando separado | Consulta e download públicos disponíveis; importação/cadastro não publicam automaticamente. | Documento e exemplar de legislação sintético demonstrados por HTTP, com sessão de visitante sem autenticação. Publicar também acionado e confirmado na interface no registo sintético30. |
| Suporte → Documentos e Formulários / Legislação → documento → Consultar / Descarregar | Escolher o documento publicado | Apresentação pública e original íntegro. | Consulta/download e hash do original demonstrados por HTTP. A legislação sintética está expressamente identificada como não oficial e sem validade; não se simulou confirmação governamental. |
| Acervo → registo → Retirar da publicação | Clicar apenas no registo pretendido | Documento/artigo deixa de ser consultável publicamente; original, cadastro e histórico permanecem. | Documento/legislação/artigo demonstrados por HTTP. Retirada do artigo/documento30 acionada na interface: cartão passou a Rascunho e /artigos/30 passou a404. |
| Gestão do portal → Sectores → Criar sector | Nome, Slug, descrições e ordem; Activo; Publicar no catálogo → Guardar | Activo e publicação são estados separados. Um sector novo publicado aparece em /sectores e nos filtros públicos de oportunidades. |
Criação/publicação do sector14 demonstradas na interface; filtros conferidos por HTTP. O sector13 foi guardado activo sem publicação e conservou published_at vazio. |
| Sectores → registo → Editar | Desmarcar Publicar no catálogo, mantendo Activo se aplicável → Guardar | Retirada do catálogo e filtros sem apagar relações/histórico. | Retirada dos sectores sintéticos13/14 demonstrada;14 pela interface. A ligação direta do13 retirado devolveu404. |
| Acervo → registo → Editar artigo | Corpo do artigo em texto simples, parágrafos separados por linha em branco; Imagem da biblioteca opcional → Guardar artigo como rascunho | Adaptação editorial no mesmo registo, sem substituir o original. Edição retira a publicação; exige Publicar outra vez no acervo. | Gravação e recuperação noutra sessão demonstradas por HTTP e no navegador; edição pela interface produziu revisão10. Imagem pública existente reutilizada, imagem inválida recusada. O histórico inclui os corpos anteriores. |
| Novo artigo sem intervenção técnica | Reutilizar um documento já cadastrado ou seguir carregar → registar no acervo → Editar artigo; título/descrição/autor/fonte em Editar metadados; corpo/imagem em Editar artigo | Artigo em /artigos/{id} ligado ao mesmo registo documental; não é necessário criar ficheiro estruturado nem configurar URL por código. |
Criação, duas edições e publicação/retirada demonstradas por HTTP; corpo original de exemplar legado sintético recuperado automaticamente no editor. A criação integral só por cliques conserva a pendência visual do upload. |
| Visitante → documento → Ler artigo | Abrir a adaptação disponível ou /artigos/{id} |
Corpo e imagem públicos, sem metadados de gestão; original consultável pela ligação correspondente. | Consulta sem sessão observada no navegador e capturada. Texto que contém marcação é mostrado como texto, sem executar scripts. |
Capturas para formação
As capturas têm sessão sintética ou visitante e conteúdo sintético, além de imagem já pública reutilizada. Não contêm credenciais, códigos MFA ou dados privados.
- Sector guardado e apresentação no catálogo.
- Publicação explícita separada de Activo e catálogo após retirada.
- Editor com corpo guardado e histórico.
- Artigo publicado, consulta sem sessão e retirada confirmada.
Pendência visual concreta: a seleção automática do ficheiro pelo Edge foi recusada pela extensão. A configuração não foi alterada nem o bloqueio contornado. Na retoma autorizada pela Tempo, a seleção pode ser feita manualmente no seletor normal do Edge, sem alterar permissões: escolher o ficheiro sintético outputs/investmoz-editorial-QA-20261018/capturas/formacao-visual-qa.txt e clicar em Abrir. Depois confirmar que o formulário apresenta o ficheiro e retomar apenas os passos visuais em falta. Se houver execução manual dos restantes passos, registar o resultado como relato do operador, distinguindo-o de observação direta do Codex. Até à demonstração, manter pendente a cadeia visual completa carregar → preencher metadados → guardar → recuperar → publicar → consultar sem sessão → retirar. A prova HTTP permanece válida e separada.
Fontes e limites: relatório QA, manifesto e adaptação apresentada antes do código. A previsão preliminar12–20 h foi de planeamento; não é medição de trabalho consumido. A disponibilização permanece separada.
Retoma manual em18/10/2026: o operador comunicou Continua sem ficheiro após selecionar manualmente. A seleção persistente permanece não demonstrada; carregamento e restantes passos visuais não foram executados nesta retoma. Não se atribui a causa ao portal, nem se repete a tentativa ou desenvolve outro mecanismo. Registo e distinção entre observação e relato. O ciclo visual integral continua pendente.
Gestão autónoma de conteúdos — observação de 18/10/2026
Conferência por leitura no ativo https://portal-investidor.test, sessão identificada como Osmane Nala. Os formulários de cadastro e edição foram abertos sem alterar campos, guardar, carregar ficheiros, publicar ou retirar registos. A presença de um comando não é prova de uma transição executada. Não foi feita nova validação de MFA nem alargamento de permissões.
Entrada observada: Área de trabalho — criação, revisão, publicação e administração → Gestão → Acervo documental. O acervo também apresenta a navegação Gestão do portal → Sectores. Podem usar-se diretamente os endereços abaixo na sessão autorizada; não são necessários comandos de terminal para abrir estes formulários.
| Conteúdo | Caminho e comandos observados | Limite da demonstração |
|---|---|---|
| Sectores | /management/sectors → Criar sector → /management/sectors/create; Nome, Slug (endereço), Descrição curta, Descrição, Ordem de apresentação, Activo, Guardar, Cancelar. Num registo existente: Editar; exemplo observado /management/sectors/8/edit, Energia. |
Cadastro e edição acessíveis. Não há comandos separados Publicar / Retirar da publicação neste formulário. Activo não comprova por si só publicação no catálogo. Nenhuma alteração executada. |
| Documentos | /management/portal-services → Receber documento em privado → Ficheiro, Entidade/autor, Origem HTTPS → Guardar em quarentena. Depois Registar documento na biblioteca, selecionar Documento recebido, completar os grupos e Guardar como rascunho. |
Controlos de carregamento/cadastro visíveis; nenhuma receção ou gravação executada nesta conferência. O carregamento privado não publica. |
| Edição documental | No mesmo acervo, localizar o registo → Editar metadados → Guardar alterações ou Cancelar edição. Grupos: 1. Identificação, 2. Fonte, versão e ficheiro, 3. Enquadramento, acesso e publicação, 4. Revisão e associações a requisitos. | Edição de uma lei existente aberta e cancelada sem alterar campos. Não confundir metadados com edição do conteúdo do ficheiro. |
| Legislação | Mesmo acervo, campo Tipo documental → Legislação. Lei22/2022 observada com título, descrição, entidade, número e data preenchidos. Grupo3 contém situação jurídica, datas aplicáveis, direitos e classificação do ficheiro. | Não existe necessidade demonstrada de outro cadastro só por ser legislação. Classificação pública e publicação são ações distintas. A aceitação das fontes oficiais pela Tempo mantém-se; os textos históricos do cadastro não introduzem nova revalidação de autenticidade. |
| Publicação/retirada documental | Nos registos publicados do acervo, Retirar da publicação está visível. O botão geral Aplicar autorização e disponibilizar documentos elegíveis está desativado; os quatro documentos dessa autorização surgem como já publicados. | Todos os registos apresentados estão publicados. Publicar para rascunho não foi observado nesta sessão; existe como ramo no componente, o que não substitui a observação. Não clicar no botão geral como teste nem repetir a autorização já aplicada. |
| Artigos existentes | Os artigos Fintech, Imobiliário, Bens de Consumo e Franquias e outros constam do acervo com Editar metadados, histórico e Retirar da publicação. | Não foi encontrado na interface observada um editor do corpo do artigo ou Criar artigo. O adaptador atual lê o corpo de um ficheiro estruturado e a identidade/URL de configuração técnica. Alterar o título documental não demonstra alteração do título/corpo apresentado pelo adaptador. |
Lacunas delimitadas para formação
- Sectores: falta demonstrar uma ação editorial que publique um novo sector. O código do catálogo exige
published_at, mas o formulário observado só expõe Activo e o ramo de gravação de sectores não define essa data. É uma lacuna do percurso identificado por leitura de código; não foi criado um sector no ativo para a reproduzir. A retirada por Activo também não foi executada. - Artigos: falta um percurso autónomo para criar/editar o corpo e gerir a identidade/URL de novos artigos sem preparar ficheiros/configuração por código. A edição de metadados da biblioteca não cobre esse objetivo.
- Documentos e legislação: não foi identificado bloqueio de acesso ao carregamento, cadastro ou edição para esta conta. A publicação de um rascunho e o efeito da retirada continuam não observados, não classificados como funcionalidades ausentes. Para provar as transições, usar um exemplar QA isolado, sem retirar documentos reais nem repetir percursos aceites.
Origem do objetivo: instrução expressa da Tempo de18/10/2026 para formação e gestão autónoma de conteúdos. Os formatos atuais dos artigos e a separação técnica is_active/published_at são escolhas de implementação, não novas regras organizacionais. A limpeza dos documentos públicos629d8347f147 está disponibilizada segundo o recibo; esse fecho não comprova o ciclo editorial completo. Parques integral e os fechos L1/navegação/sectores permanecem separados.
Relatório desta observação: verificação editorial.
Matriz executável
Decisão transversal da Tempo, 23/10/2026: percurso adaptativo com entradas por ideia/oportunidade/sector/localização; perguntar uma vez, preservar edições deliberadas e contexto entre ecrãs/autenticação; seleccionar opções únicas; ocultar exigências não aplicáveis sem confundir ausência de informação com dispensa; conservar especificidades na selecção múltipla. Mostrar posição, pendências e próxima acção. Relatórios/exportações seguem a mesma aplicabilidade. Origem: pedido expresso da Tempo nesta data; implementação incremental nos componentes existentes, sem novos aprovadores.
Incremento de apresentação: o dossier conserva as 19 etapas e o histórico, mas apresenta formulários apenas das etapas com preparação permitida. As restantes têm resumo do fundamento e podem regressar ao rever a decisão. A ferramenta Terra/DUAT deixa de ser proposta quando land_needed=no; unknown mantém a preparação disponível. Relatórios do plano reúnem requisitos documentais not_applicable numa explicação, mantendo requisitos em falta ou indeterminados. Esta alteração não remove obrigações jurídicas nem modifica dados guardados. A aplicação transversal a todos os formulários, entradas e exportações permanece por conferir; não se encerra esse requisito por documentação.
| Menu / ecrã | Componente React | Campos / entidade / tabela | Rota ou API | Perfil / regra | Evidência |
|---|---|---|---|---|---|
| Preparação adaptativa / relatório | investor-path/show, investment-requirements, project-dossier-report |
Aplicabilidade e contexto existentes; histórico preservado | /investimentos/{id}, /aplicabilidade; exportações existentes do plano |
Tempo, 23/10/2026: ocultar preparação sem aplicação; desconhecido não é dispensa | Incremento QA: InvestmentCorridorContextTest::test_nonapplicable_land_hides_the_action_and_reopening_recovers_saved_evidence (18 asserções); relatório 11 testes; types/build; cenário sintético no navegador. Cobertura transversal ainda parcial. |
| Início | PortalInvestidor |
Sectores, oportunidades, recursos publicados | /, APIs existentes de homepage |
Visitante; contagens do cadastro | PublicPortalNavigationTest, navegador |
| Catálogo / Educação | investment/catalogue |
Filtros, educação, pivots, facetas | /oportunidades, /educacao; /api/v1/investment/search |
Visitante; filtros em intersecção, montantes com moeda | InvestmentUnificationTest |
| Cluster / Corredor / Âncora | portfolio/index, portfolio/show |
Dossiers, relações, cadeias e oportunidades | /clusters, /corredores, /projectos-ancora, /carteira/{id} |
Visitante; dossier publicado; cadeia pública | InvestmentPortfolioTest, testes territoriais |
| Ficha | investment/detail |
Oportunidade, contexto, relações, fonte | /oportunidades/{slug}; /api/v1/investment/opportunities/{slug} |
Visitante; rascunhos não acessíveis | PublicPortalNavigationTest, InvestmentUnificationTest |
| Mapa | Componente Map em catálogo |
geo_locations, geo_geometries, opportunity_locations |
/api/v1/investment/map |
Visitante; dois níveis de classificação pública | Teste PostGIS e estados vazios |
| Comparar / exportar / sugerir | investment/catalogue |
IDs publicados, dados de catálogo | /compare, /export, /suggest sob prefixo da API |
Visitante; 4 comparações, 1.000 linhas/pontos; CSV protegido | Teste de publicação e fórmula CSV |
| Área do investidor | investment/workspace |
Manifestações, recibos, favoritos | /investidor/manifestacoes; /api/v1/investment/submissions |
Titular autenticado e verificado | Isolamento por dono |
| Perfil / empresas | investment/profile |
investment_accounts, investment_company_declarations |
/investidor/profile; API /profile, /companies/{id?} |
Titular; versão, encriptação, sem concessão de memberships | InvestmentWorkspaceTest e navegador |
| Conversa / versões | investment/conversation |
investment_messages, investment_submission_revisions |
API /submissions/{id}/messages, /submissions/{id}/revisions/{version} |
Titular/gestor; mensagem idempotente; histórico privado | Testes de isolamento, encriptação e reenvio; navegador |
| Notificações | investment/notifications |
investment_notifications |
/investidor/notifications; API /notifications, /{id}/read |
Destinatário; revogação de acesso a terceiros respeitada | Testes de mudança de estado e leitura; navegador |
| Manifestação | investment/submission |
investment_submissions.payload, necessidades |
PUT /submissions/{id}, POST /submissions/{id}/submit |
Titular; versão, opções activas, consentimento, idempotência | Testes de conflito, validação e reenvio |
| Anexos | Etapa 4 da manifestação | documents, investment_submission_attachments |
/submissions/{id}/attachments |
Titular/gestor lê; titular altera rascunho; checksum | Teste de anexo privado e adulteração |
| Contexto da oportunidade | investment/context |
Perfil, relações muitos-para-muitos, facetas | /management/opportunities/{id}/context |
Gestor; versão e retorno a rascunho | Teste de gestão, conflito e educação |
| Referências e formulários | investment/references |
Opções, rótulos, ordem, actividade | /management/investment/references |
Gestor; códigos estáveis, Outro preservado | Teste de referências e reexecução do seed |
| Atendimento / CRM | management/interest, gestão CRM existente |
interest_requests, outbox_events, leads |
/management/interests/{id} |
Gestor; consulta manifestação completa pelo vínculo | Testes de intake e CRM existentes |
| Apoio / documentos / parcerias | portal/services, portal/manage |
Recursos, parcerias, pedidos existentes | /apoio, /documentos, /parcerias, /balcao-virtual |
Regras existentes de publicação e dono | PublicPortalServicesTest |
Os nomes curtos /compare, /submissions, etc. nesta matriz pertencem a /api/v1/investment. O contrato detalhado está em openapi.json (OpenAPI 3.0.3).
Cobertura ainda parcial do prompt
As fichas territoriais apresentam conteúdo autorizado do documento v4, relações e cadeias cadastradas. Não existe ainda um editor unificado de todos os actores, fornecedores, contactos, infraestruturas físicas e indicadores para cada ficha. O mapa actual é de pontos de oportunidades, sem cartografia de linhas de corredores. As facetas representam classificações; não substituem inventário físico ou cálculo de lacunas.
A educação pública encontra oportunidades publicadas classificadas como educativas ou ligadas a propostas. As propostas geradas pelo módulo interno conservam a regra de publicação desse módulo; a extensão não torna públicas automaticamente necessidades internas ou alegações institucionais.
A área pessoal reúne rascunhos, manifestações, estados, favoritos, perfil de investimento, empresas declaradas, conversa bidireccional e notificações internas. As declarações empresariais são privadas e não substituem o cadastro canónico validado de organizações. Não existem candidaturas com um procedimento distinto das manifestações. Confirmação e notificações são apresentadas no portal; não se presume envio de email. O CRM local recebe o pedido pela outbox existente, mas a entrega a SuiteCRM remoto continua dependente da configuração e teste do conector.
O histórico de manifestações enumera actos e versões e permite consultar snapshots privados gravados a partir desta extensão; não restaura automaticamente versões anteriores. A gestão utiliza o gate manage-portal; separação de técnico, validador e administrador continua pendente. Os achados anteriores de concorrência/publicação em dossiers e revisão de resultados de IA permanecem registados em ../architecture-data-security-qa-product-review.md.
Manual do investidor
- No catálogo, combine sector, território, maturidade, educação e características. Para comparar montantes, seleccione a mesma moeda. Os filtros não convertem câmbio.
- Alterne entre grelha, lista e mapa. Quando não há coordenadas autorizadas, o portal informa a ausência. Marque até quatro oportunidades para comparação; use Exportar para obter as primeiras mil linhas filtradas.
- Abra uma ficha e seleccione Preparar manifestação. Entre com conta de email verificado. Nome e email são preenchidos a partir da conta; os restantes dados são declarações do investidor.
- Preencha identificação e investimento, acrescente necessidades, quantidades e prazos. Escolha Outro e descreva quando nenhuma opção servir. Mão de obra e educação apresentam campos específicos.
- Guarde o rascunho antes de sair ou carregar anexos. Na etapa Anexos, associe PDF/TXT e identifique o ficheiro nas observações da necessidade correspondente.
- Reveja, conceda consentimento de contacto e envie. O protocolo identifica um único pedido; repetir o envio não o duplica. Consulte o estado na área pessoal. O envio não constitui aprovação de investimento nem consentimento para IA.
- Se aparecer conflito de versão, recarregue para ver a versão actual antes de repetir a alteração. Nunca sobrescrever automaticamente uma sessão concorrente.
- Em Perfil e empresas, guarde dados reutilizáveis e declare as empresas que representa. Preparar manifestação desta empresa preenche os dados declarados, sem atribuir permissões sobre organizações de terceiros.
- Depois de submeter, use Conversa com o apoio para esclarecimentos. Consulte Notificações para respostas e mudanças de estado; marque-as como lidas. Em Versões guardadas, consulte o conteúdo anterior sem alterar o pedido actual.
Manual de gestão
- Em Oportunidades, crie ou edite a ficha principal e abra Contexto. Associe clusters, corredores, âncoras e localizações existentes; seleccione educação/facetas quando aplicável e registe a fonte.
- Guardar contexto retira a publicação até revisão explícita na ficha principal. Confira texto, referências, moeda e ausência de informação privada antes de publicar.
- Em Referências e formulários, acrescente opções dentro dos grupos existentes. Edite rótulos e ordem; desactive opções obsoletas. Não altere códigos já usados. Outro mantém-se activo e exige especificação.
- Em Pedidos de interesse, consulte a manifestação completa e os anexos privados. Actualize o estado pelo fluxo existente e encaminhe para o CRM com responsável e próxima acção.
- Dossiers e oportunidades são registos diferentes. A associação é explícita; não copie as quinze âncoras para o catálogo só para produzir resultados.
Design e protótipos executáveis
Os ecrãs React são os protótipos funcionais entregues: catálogo, detalhe, área pessoal, formulário de cinco etapas, contexto e referências. Não foi produzido um ficheiro Figma nem se alega validação prévia por participantes. A biblioteca local usa fundo slate-50, texto slate-900, acções emerald-800, cartões com borda, campos rotulados, foco visível, grelhas responsivas e estados vazios explícitos. Elementos partilhados: investment/shared.tsx e layouts/portal-navigation.tsx.
Verificar teclado, ordem/foco, erros, contraste, zoom 200–400%, leitura assistiva, upload e suporte fixo em cada alteração. A lista textual do mapa é alternativa ao SVG. Verificações automáticas e ausência de transbordo não equivalem a certificação WCAG 2.2 AA.
Formação e próximos critérios
Plano preparado, sessões ainda não realizadas:
| Sessão | Exercício verificável | Resultado esperado |
|---|---|---|
| Investidor — 30 min | Filtrar, comparar, guardar necessidade, anexar e enviar em ambiente de formação | Um protocolo; nenhum dado visível por outro participante |
| Gestor — 45 min | Criar opção, associar contexto, rever publicação, consultar pedido e encaminhar | Fonte registada, rascunho antes de publicar, encaminhamento com responsável |
| Operação — 45 min | Restaurar backup isolado, verificar chave/anexos, simular falha de fila | Reconciliação documentada; nenhum envio duplicado |
| Acessibilidade — 30 min | Percurso por teclado e leitor de ecrã em móvel/computador | Registo de obstáculos e correcções antes de homologação |
Backlog restante: editores territoriais completos e cartografia; ligação validada de empresas declaradas ao cadastro canónico; papéis especializados; retenção; homologação assistiva e carga; SuiteCRM no destino; sessões de formação e deploy monitorizado. A reconciliação remota foi adiada pelo proprietário para fase futura. Cada item exige implementação/evidência concreta, não nova aprovação genérica dos requisitos já autorizados.
Parques — complemento L1 pendente (DOC01, 16/10/2026)
Esta nota de cobertura não altera os procedimentos históricos acima nem encerra a ficha integral. O recorte parques-operacionais-QA-6aacf653a98e consta como disponibilizado no relatório de entrega; as novas funcionalidades L1 — responsabilidades, condições/tarifas contextualizadas, riscos/canal e revisão documental — permanecem pendentes de implementação, prova e confirmação da entrega. Não são instruções de utilização de funcionalidades já disponíveis.
O desenho reutiliza o mesmo cadastro: uma organização pode ter várias funções. Separa preparação privada de publicação expressa; contactos pessoais/notas/suporte privados ficam excluídos da projeção pública. Condições com fonte/data/âmbito/moeda/unidade aplicáveis; desconhecido não significa gratuito, disponível ou autorizado. Preservação privada e pública após guardar pelo editor anterior compatível é critério ainda por demonstrar. A estimativa é 24–36 h adicionais QA e 2–4 h operacionais futuras separadas.
Estado e critérios na mesma docs/investmoz/v2/auditoria-portal/matriz-requisitos.csv; desenho em outputs/investmoz-parques-integral-delimitacao-20261016/DOC01/. Não há implementação ou ativação decorrente desta atualização documental. Menus, duplicados, regulação Fintech e demais aceitações mantêm os seus estados.
Parques L1 — demonstração QA, disponibilização pendente (DOC02, 16/10/2026)
A nota DOC01 anterior fica como histórico do desenho antes da implementação. parques-L1-QA-fb56ec51f62e demonstra apenas em QA a reutilização de uma entidade em várias funções, preparação/divulgação separadas, condições e tarifas documentadas com desconhecidos, risco/canal e recuperação após edição anterior compatível. Ainda não é uma funcionalidade disponibilizada no ativo nem uma ficha integral concluída. Os novos anexos/manual não se presumem conferidos ou aceites pelo utilizador.
Reversão conserva oito fontes funcionais, schema/histórico e compilação compatível: os dados privados e a projeção pública permanecem recuperáveis pela API. O ecrã anterior não apresenta os grupos L1; voltam ao ecrã ao repor a candidata. Não repor todos os ficheiros antigos nem um dump anterior sobre utilização posterior. Fonte/âmbito/data e moeda/unidade aplicáveis acompanham os valores; desconhecido não é gratuito/disponível/autorizado. O apoio da Tempo é distinto da gestão do parque. Sem confirmação de dados reais por estes ensaios.
Estado na mesma matriz; provas e proposta em outputs/investmoz-parques-L1-QA-20261016/. Estimativa adicional inicial24–36h é referência, não tempo consumido; recorte QA concluído e futura operação2–4h dependente de decisão específica. Ficha integral, menus, duplicados, regulação Fintech e aceitações anteriores preservados.
18/10/2026 — L1 dos parques disponibilizado; observação do editor delimitada
Candidata parques-L1-QA-fb56ec51f62e, pacote DOC02 autorizado pela Tempo. O utilizador conferiu os cinco documentos e recibo; a inspeção do ZIP permanece verificação do Codex. Navegação separada e ficha integral aberta.
Aplicados 12 artefactos (oito substituições, três fontes novas e migration nominal) e 162 ficheiros de compilação, conferidos por hash. Troca em manutenção, apenas view:clear, cache de dados idêntica durante a troca e saída de manutenção antes do instalador. Preservados os documentos atuais, complementados com este resultado sem reposição de versões antigas.
Backup/restauro fresco do destino: 295 tabelas e 31 sequências coincidentes, 1316 ficheiros extraídos/conferidos incluindo 29 documentos; arranque do clone em leitura e chave verificada por decifragem. A primeira tentativa incompleta foi preservada; não foi usada como prova válida.
Instalação executada pelo utilizador na interface autenticada e confirmada por leitura: conta 2, recibo bffa9337-b2ca-48c6-bc6b-fbbf100f8848, apenas 2026_10_16_140000_add_investment_zone_operational_details, uma entrada no ledger e coluna JSONB nullable. Hash do recibo corresponde à candidata; zero registos de negócio alterados. Nenhuma fixture importada, ficha guardada ou publicada, grant ou flag alterado.
Preservação: comparação das 295 tabelas, sem diferenças inesperadas de negócio/histórico. Todos os detalhes operacionais permanecem nulos. Diferenças esperadas: ledger, auditoria nominal e projeção da coluna nova; cache/sessões e remember_token da conta autenticada. Sequência migrations_id_seq aumentou uma unidade. Conferidos 827 ficheiros alheios/protegidos, 12 artefactos/162 assets, 281 ficheiros geridos e 29 originais documentais. Lista pública de oito zonas e ficha Balama mantêm os campos públicos anteriores, com assets servidos iguais aos locais. B, COUNTRY02, papéis e histórico preservados.
Limite da observação: o controlo do computador não conseguiu identificar o URL com segurança; a instalação na interface foi reportada pelo utilizador e confirmada no ledger/auditoria. Abertura do editor L1 autenticado no ativo, sem guardar, não foi observada pelo Codex. Não declarar esse ponto demonstrado nem repetir testes QA para o substituir. Conferência pública HTTP e preservação de dados concluídas.
Reversão pós-uso continua parcial: conservar oito fontes funcionais, colunas/migrations/ledger/histórico e build compatível. O ecrã anterior não mostra grupos L1; os privados e a projeção pública ficam preservados na API conforme provas QA históricas, não repetidas no ativo. Nenhuma reversão ativa executada.
Saldo de troca/instalação/conferência por leitura: zero. Observação autenticada do editor permanece não demonstrada. As 2–4 h operacionais e 24–36 h QA são estimativas históricas, não horas consumidas. A disponibilização deste recorte não encerra a ficha integral.
18/10/2026 — observação do editor L1 confirmada pelo utilizador
O utilizador respondeu «feito» à instrução de abrir o editor autenticado de Balama e confirmar os grupos L1 de responsabilidades, condições/tarifas, riscos/canal e revisão documental, sem guardar nem publicar. Regista-se como observação confirmada pelo utilizador, não observação direta do Codex. Fica resolvida a pendência operacional de observação referida no registo anterior; não há repetição da 140000 ou nova alteração no ativo nesta atualização documental. A matriz conserva o registo histórico da não observação direta pelo Codex; esta confirmação posterior complementa-o. A disponibilização do recorte L1 está concluída. Ficha integral aberta; relatório local continua sem conferência do utilizador. Estimativas anteriores não representam horas consumidas.
Evidência: outputs/investmoz-parques-L1-ativacao-20261018/OBSERVACAO-EDITOR-UTILIZADOR.json.
18/10/2026 — conferência do relatório local confirmada
O utilizador confirmou expressamente a conferência de RELATORIO-ENTREGA.md, identificado como ficheiro ativo no IDE. Esta confirmação atualiza a pendência documental anterior; não declara nova inspeção do ZIP nem repetição de testes ou da 140000. Disponibilização do recorte L1 concluída; ficha integral aberta. Registo: outputs/investmoz-parques-L1-ativacao-20261018/REGISTO-CONFERENCIA-RELATORIO-UTILIZADOR.json.
18/10/2026 — rectificação documental e editor L1 observado
O ChatGPT conferiu os documentos DOC02 da candidata QA; não está confirmada a conferência pelo utilizador do relatório local da ativação. Esta rectificação substitui a atribuição anterior. Editor Balama observado diretamente pelo Codex no URL HTTPS confirmado, conta 2/Osmane Nala pelo DOM: Entidades e funções, Condições e tarifas declaradas, Riscos e canal de esclarecimento, Qualidade e revisão documental. Público v3/preparação não guardada; sem alterações, gravação, publicação ou repetição da140000. Resultado: observado. Evidência: outputs/investmoz-parques-L1-ativacao-20261018/OBSERVACAO-OPERACIONAL-FINAL.json e EDITOR-OBSERVADO-20261018.txt. Sessão autorizada existente; não se declara novo desafio MFA. Saldo operacional restante L1 zero; ficha integral aberta. Relatório e recibo finais rectificados para conferência na página privada existente.
18/10/2026 — navegação e contexto consolidados em QA
Os cinco pontos pedidos foram consolidados na candidata QA navigation_consolidation_20261016_test:55441, servida em http://127.0.0.1:18536 . O protótipo anterior de 18534 continua histórico. Nenhuma alteração no ativo; instalação L1/140000 preservada.
Organização visual
Mantidos os nomes Descoberta, Realização e Suporte. Descoberta reúne Início, Porquê investir, oportunidades, sectores e localizações; Realização reúne iniciar investimento, simulador, licenciamento e terra; Suporte reúne serviços, acompanhamento e apoio. Conta/atividade e trabalho por papel ficam em áreas próprias. Acrescentadas explicações curtas dentro dos três menus para distinguir explorar, preparar e obter apoio. Destinos observados no navegador; grupo actual, Escape com retorno de foco, controlos de44px e disposição390px sem deslocação horizontal conferidos. Capturas VISUAL-DESKTOP.png e VISUAL-MOVEL.png. Avaliação técnica executada pelo Codex; aceitação visual pela Tempo não presumida.
Associações guardadas e troca de contexto
A consolidação já existente posterior ao protótipo grava seleções versionadas de oportunidade, sector, território e parque no payload cifrado do mesmo dossier, com fonte/versão/hash. Preferência de dossier/etapa é guardada no servidor por conta, não apenas no navegador. Recuperação actual demonstrada em duas sessões autenticadas independentes para o mesmo dossier; oportunidade e território persistem. Isto simula dois clientes; não afirma ensaio em dois equipamentos físicos.
Confirmar usa transação, versão optimista, prévia vinculada à sessão/ator e chave idempotente. Cancelar e prévia não escrevem no negócio. Título e declarações editadas, documentos, histórico e conteúdo já submetido permanecem. Alterações explícitas definem os campos substituídos; dimensões alteradas identificam etapas e resultados dependentes. Resultados antigos são preservados com revisão requerida; evidência actual exige nova revisão expressa. Pedidos submetidos conservam conteúdo, versão, protocolo e recibo, marcados como contexto histórico. No-op não invalida resultados. Não activa cálculos fiscais por selecção.
Estas transações têm38 condições registadas no HTTP-QA.json histórico, incluindo cálculo local real sobre valores sintéticos e submissões QA. Não foram repetidas para substituir aceitações anteriores. A leitura actual recuperou resultados históricos e pedidos preservados. O confirmar da candidata funcional grava; o confirmar do protótipo18534 continua apenas prévia histórica.
Formulários e resumo
Simulador, terra, Balcão e submissão recebem o contexto. Campos vazios são preenchidos; valores editados são preservados. Substituição exige selecção e revisão expressas, mantendo a hierarquia territorial coerente. Versão do contexto é conferida antes de submeter um rascunho antigo. Resumo identifica dossier, oportunidade/referências e versões, localização, etapa actual e próxima acção. A leitura actual confirma quatro consumidores e19etapas no mesmo UUID. Pré-preenchimento não é submissão automática.
Porquê investir
Página dedicada /porque-investir, com percursos por produção/transformação, território/logística e serviços/parcerias, além de sectores, fontes, preparação e apoio. Conteúdo orienta a avaliação das condições e liga aos destinos existentes, sem taxas, vantagens fiscais, disponibilidade ou retorno inventados. Abrange investidores nacionais e estrangeiros em todo o território nacional.
Dependências, preservação e validação
Código da candidata foi reconciliado com os12artefactos L1 instalados. A ficha de parque mantém os grupos L1 e recebe apenas o acesso de comparação no contexto. A QA não repetiu nem instalou140000; a sua base anterior ainda não contém o schema L1, pelo que isto é preservação de fonte/compilação, não novo ensaio integral de L1. O ativo foi conferido por hashes antes/depois e ficou igual.
Lint dos três ficheiros alterados, TypeScript e compilação passaram. Recuperação por dois logins/MFA QA e verificações sem escrita de negócio passaram. Provas transacionais, restauro e compatibilidade de16/10 são históricas e reutilizadas; o pacote novo contém fontes/build QA actuais. O pacote anterior de18/10 e a reversão anterior não devem ser usados directamente sobre o ativo actualizado com L1. Preparar disponibilização exige decisão própria, manifesto de destino, backup/restauro fresco e reconciliação da reversão com o estado actual. Nenhuma escrita ativa autorizada ou executada por este pedido.
Matriz existente complementada apenas nos sete requisitos de navegação/contexto, sem fechar critérios alheios. Manual actualizado; sem nova matriz ou backlog. L1, ficha integral, CAE, duplicados, Fintech, B e COUNTRY02 mantêm estados próprios.
18/10/2026 — revisão visível anterior à decisão, resultado parcial
Resultado global: parcial. Não há demonstração completa dos quatro formulários nesta candidata. O utilizador não abriu a candidata nem conferiu os novos anexos. L1 permanece encerrado no âmbito entregue e não foi reensaiado. Nenhuma decisão de disponibilização ou alteração ativa é presumida.
Revisão exacta
Candidata navegacao-contexto-QA-b1c98ec7140c, código/compilação SHA-256 b1c98ec7140c2753a40d22b6b4f235ab7c4f7c5a43d322d55ba6c84a53a169d6, obtido pelo fingerprint do instalador no clone guardado navigation_consolidation_20261016_test:55441. Fonte39/build167 coincidem com o manifesto do pacote QA já entregue. ZIP SHA-256 15de1c9115bcd8196d4a15c411e350527b1daf622da01ce67394d5279adf32c7. Não se alterou código para esta revisão: trata-se da mesma candidata, agora observada nos percursos pedidos. O contexto sintético passou de v3 a v4; isso é versão do dossier, não revisão do código.
Três resultados pedidos
| Resultado | Estado e evidência visível |
|---|---|
| Entrada por ideia, oportunidade, sector e localização | Observado no mesmo dossier ff0e2468-5eae-4556-8c74-97ade0b0b079. Quatro entradas registadas no DOM, sem criar outro dossier. Resumo mantém a identidade, etapa S12 e próxima acção Preparar S01. O percurso ideia demonstrou continuar uma ideia existente, não criar uma nova ideia. |
| Quatro formulários com dados existentes e sem substituir edições | Parcial: os três primeiros mostram bloco de contexto e comparação de valores; o quarto abre sem bloco de pré-preenchimento porque a manifestação existente não está vinculada ao dossier. A presença das quatro chaves na API não demonstrava esta ligação funcional. |
| Mudança, impacto prévio e recuperação noutra sessão | Observado: oportunidade33 para16; sector13 para1. Prévia mantém título/descrição, actualiza selecção/sector e identifica3resultados financeiros e etapas S02/S03/S04/S08/S12/S13/S14/S15/S17 para revisão. Após confirmar no navegador, dossier v11→v12 e contexto v3→v4. Logout e novo login/MFA recuperam UUID, selecção, contexto v4, etapa S12 e próxima S01. |
Os quatro formulários
- Formulário de simulação e manifestação — Simulador Fiscal,
/simulador-fiscal?context=…&draft=17c49815-3c4e-4496-8ae1-363e685aa00f. Rascunho existente recuperado. Comparação mostra título «Título editado no formulário — preservar» e descrição «Descrição privada editada no formulário — preservar», distintos dos propostos, sem selecção de substituição. Contexto v4 contra revisão vinculada v3 visível. O atalho à etapa4 exige campos obrigatórios da etapa1 ainda não preenchidos no exemplar; a preservação foi observada na tabela de comparação, não se afirma completar todo o wizard. - Terra e DUAT — Formulário de orientação e preparação,
/investidor/terra-duat/novo?context=…. Projecto e localização recebem dados existentes; mensagem de preenchimento de vazios visível. Editada em memória a referência para «Edição QA — conservar referência de projecto»; comparação conserva esse valor. Não guardado nem submetido. - Balcão Virtual — Preparar e submeter dossier de investimento,
/balcao-virtual/pedidos/1db4ab2a-d24e-42ea-af3b-60cd772709b6. Criado um rascunho sintético pelo botão existente do dossier. Dados do dossier preenchidos. Nome alterado em memória para «Edição QA — nome do pedido preservado»; tabela mostra o nome editado contra o proposto, sem substituição. Não submetido; não se afirma persistência dessa edição local. - Preparar manifestação de interesse,
/investidor/manifestacoes/01a127a5-cfb6-70df-8b48-9e769e3c12d9. Manifestação privada já existente. Resumo global mostra o investimento, mas o formulário não tem contexto vinculado. Inspecção QA em leitura confirmadesk_cases.submission_idnulo no dossier e nenhuma ligação para as manifestações desta conta. Falha do critério de pré-preenchimento transversal neste percurso, não falha do portal inteiro. Não criar uma ligação por fixture para simular a demonstração.
Fica por resolver o vínculo explícito e recuperável entre manifestação e o dossier já existente, com autorização/versão e sem substituir outro vínculo ou gerar dossier duplicado; depois demonstrar o quarto formulário. Essa lacuna não é resolvida por lint, tipos ou compilação, nem por presença do resumo global.
Comparação de cliques
Comparação estrutural, aproveitando o levantamento anterior documentado em COMPARACAO-CLIQUES.md do protótipo e conferindo os destinos/componentes actuais. Não é telemetria nem medição de tempo. Condições: menus fechados, sessão válida e mesmo dossier já escolhido; cada abertura de grupo e activação de ligação conta1; não inclui scroll, digitação, rede ou login/MFA. A escolha num select é indicada separadamente, sem fingir contar cliques físicos do sistema operativo.
| Tarefa com destino equivalente | Antes | Candidata actual | Caminho actual |
|---|---|---|---|
| Abrir oportunidades | 2 | 2 | Descoberta → Oportunidades de investimento |
| Abrir sectores | 2 | 2 | Descoberta → Sectores de investimento |
| Voltar ao dossier já seleccionado | 2 | 1 | Abrir dossier actual no resumo |
| Abrir simulador do mesmo dossier | 3 | 2 | Realização → Incentivos e simulador fiscal, com contexto |
| Pedir apoio pelo menu principal | 2 | 2 | Suporte → Apoio ao investidor |
Na entrada já originada em oportunidade/sector/localização: uma selecção de dossier + uma activação «Comparar no mesmo dossier» foram executadas por percurso. Da edição à confirmação: «Comparar impacto» + «Confirmar e guardar» são2activações, além da selecção alterada. No protótipo não existia destino funcional equivalente para persistir, pelo que não se anuncia redução comparativa nessa tarefa. Os cliques totais de descoberta de cada anúncio/sector/localização desde a página inicial não foram medidos nesta revisão; não declarar ganho global.
Evidência e limites
DEMONSTRACAO-VISIVEL.json contém snapshots por entrada, por formulário e antes/depois da mudança e na nova sessão. CONTEXTO-ANTES.png e CONTEXTO-RECUPERADO.png documentam a apresentação. Uma captura de página inteira excedeu o tempo da ferramenta; foi substituída por captura do viewport, sem repetir a confirmação. Atrasos de navegação foram reconciliados pelo URL/DOM actual antes de qualquer nova acção.
Foi usada conta sintética21 em QA, com login/MFA normal. Houve uma mudança de contexto e um novo rascunho de pedido exclusivamente QA; não houve submissão externa, instalação, publicação ou escrita ativa. 998 ficheiros do ativo ficaram iguais. L1 não reensaiado. Aceitação do utilizador e conferência dos anexos: não realizadas. Antes de uma decisão que exija quatro formulários demonstrados, o critério da manifestação permanece aberto.
18/10/2026 — manifestação integrada na candidata QA
Integração concluída apenas em QA na mesma candidata, agora navegacao-contexto-QA-73f8bd1347ca. O quarto formulário demonstra vínculo explícito ao dossier existente, preenchimento dos campos disponíveis sem substituir edições, recuperação após nova sessão e uma submissão com recibo. O utilizador ainda não conferiu estes anexos. Activo inalterado; disponibilização separada.
Revisão e âmbito
Fingerprint exacto de código e compilação: 73f8bd1347ca46c4e8ac6be7aa4bad2b180ba29032684a485cca341966c7e877. Destino exclusivo navigation_consolidation_20261016_test:55441, URL http://127.0.0.1:18536 . Pacote cumulativo: 40 fontes e 167 ficheiros de build. Delta desta tarefa: controlador da manifestação, rota autenticada de associação, formulário e inclusão dessa rota no fingerprint. Sem alteração do modelo ou migration nova; nenhuma instalação repetida. As regras de âmbito QA, preservação e acesso directo vêm do pedido da Tempo; usar a FK existente desk_cases.submission_id, bloqueios, versões e idempotência são escolhas técnicas, não novas regras organizacionais.
Reutilizada a relação canónica já existente entre processo e manifestação, sem confundir investment_submissions.dossier_id (referência comercial de outro domínio) com o dossier de investimento. Uma associação existente não é substituída. Se o processo já tiver manifestação, o pedido recusa conflito; não cria outro dossier nem outra manifestação. A operação bloqueia as duas linhas e grava vínculo, versão e histórico na mesma transacção. Não foi necessário alterar cardinalidade nem decidir um novo modelo de vínculo. Uma futura alteração dessa cardinalidade exigiria decisão específica.
Demonstração do quarto formulário
Formulário Preparar manifestação de interesse, /investidor/manifestacoes/01a127a5-cfb6-70df-8b48-9e769e3c12d9, rascunho pré-existente. Dossier ff0e2468-5eae-4556-8c74-97ade0b0b079, contexto v4. Conta sintética QA21, login e MFA normais.
| Critério | Resultado observado |
|---|---|
| Acesso directo | O rascunho abriu sem dossier vinculado. A secção «Reutilizar um dossier existente (opcional)» permite continuar sem dossier; criar dossier não é pré-condição de guardar/submeter. A prova actual de submissão é do percurso vinculado; não se afirma nova submissão directa sem dossier. |
| Vínculo real | Escolhido o dossier existente e activada a associação pela interface autenticada. Contexto v4 e UUID correcto surgiram no formulário. Nenhum vínculo por fixture. Número de dossiers29 e de manifestações6 mantidos. |
| Preenchimento e edição | Objectivo e localização vazios receberam os dados existentes. Sector previamente alterado para «Sector editado pelo utilizador — QA» permaneceu igual, incluindo depois de guardar. Não se inferiram valores ausentes nem identidade do investidor a partir de uma oportunidade. |
| Recuperação | Após terminar sessão e novo login/MFA, reabriu-se a mesma manifestação: vínculo, revisão4, sector editado, objectivo, localização e prazo recuperados. Demonstra sessão nova, não dois equipamentos físicos. |
| Submissão e recibo | Uma activação de «Submeter manifestação» apresentou protocolo IR-2026-01M576QMSKV91Q53GZCHKM61P0, estado Recebido, versão5. Duas repetições HTTP devolveram o mesmo protocolo e versão sem novas linhas. |
| Isolamento | Conta externa não leu a manifestação/recibo nem repetiu a submissão (404). Leitura/vínculo ao dossier de outro proprietário recusados (403); substituição por outro dossier da própria conta recusada (409); versão desactualizada409, parâmetro de ator422 e anónimo401. |
| Sem duplicações | Um context_bound, um submitted, um interesse, um recibo e um evento outbox para este interesse. Os outros28 dossiers permaneceram iguais por hash; o payload cifrado do dossier associado também ficou idêntico. |
O preenchimento usa apenas os dados autorizados correspondentes ao consumidor da manifestação; a revisão expressa do contexto é conservada no histórico. O outbox QA ficou pendente e não foi despachado externamente. Não houve publicação.
Quatro formulários e provas anteriores
Os quatro formulários são: Formulário de simulação e manifestação — Simulador Fiscal; Terra e DUAT — Formulário de orientação e preparação; Balcão Virtual — Preparar e submeter dossier de investimento; Preparar manifestação de interesse. Os três primeiros conservaram a aceitação e evidência anterior, sem repetição nesta tarefa. Só o quarto foi integrado e demonstrado nesta revisão. Os limites anteriores mantêm-se: demonstração do simulador na tabela de comparação, Terra e Balcão com edições em memória. Não se transforma essa aceitação em prova nova de submissão dos três. Entradas por ideia/oportunidade/sector/localização e troca de contexto usam a evidência anterior, também sem repetição. L1 permanece encerrado no âmbito entregue, não reensaiado; ficha integral dos parques aberta.
Cliques
A tabela comparativa no relatório principal continua estrutural: oportunidades2→2, sectores2→2, voltar ao dossier2→1, simulador3→2 e apoio2→2, com condições descritas nesse relatório; não foi novamente medida. Não há destino funcional anterior equivalente à associação persistente, pelo que não se apresenta ganho comparativo.
Nesta demonstração foram efectivamente executadas uma escolha no select e uma activação de «Associar este dossier e recuperar dados»; depois, uma activação de «Submeter manifestação». Guardar, rever, mudar de etapa e login/MFA são acções adicionais, não incluídas nessas contagens delimitadas. Escolha no select não é contagem de cliques físicos. Não se mediu o total de cliques desde a página inicial, tempo nem ganho global. Os dois reenvios HTTP não são cliques de navegador.
Evidência e preservação
manifestacao/DEMONSTRACAO-VISIVEL.json, RECUPERACAO.png e RECIBO-VISIVEL.png contêm observações da interface. HTTP-QA.json contém18 verificações HTTP; FINAL-QA.json contém15 verificações de leitura da base e as contagens antes/depois. Lint do ficheiro alterado, tipos e build passaram como validação complementar. As998 fontes/build do ativo abrangidas pelo preflight permanecem iguais por SHA-256. Não foi aberta ligação à base ativa. A migration140000 não foi repetida;150000 continua apenas na QA já instalada. Não houve novo lote, importação, publicação ou alteração de permissões.
Relatório/matriz registam este resultado técnico observado, sem presumir revisão dos anexos ou aceitação visual pela Tempo. A futura disponibilização exige o seu procedimento separado e reversão reconciliada com o ativo; o pacote QA não autoriza execução ativa.
18/10/2026 — disponibilização autorizada da navegação, instalação pendente de MFA
Concluída a troca de código/compilação; instalação150000 pendente de MFA reconhecido pela aplicação. Candidata navegacao-contexto-QA-73f8bd1347ca, autorizada expressamente pela Tempo em18/10/2026. Esta autorização não é registada como conferência dos anexos pelo utilizador. Destino https://portal-investidor.test, base investemoz:5432.
Execução realizada
Conferidos ZIP,40 fontes e167 ficheiros de compilação; fingerprint exacto 73f8bd1347ca46c4e8ac6be7aa4bad2b180ba29032684a485cca341966c7e877. Antes da troca foi realizado backup fresco do destino, restaurado exclusivamente na QA navigation_before_20261018_100137_test:55441:295 tabelas,31 sequências e1320 ficheiros, incluindo29 documentos, conferidos. Arranque do kernel do clone restaurado, renderização e decifragem com chave preservada passaram. Não se declara ensaio do worker/TLS do servidor real no clone.
Troca em manutenção, saída concluída. Apenas view:clear; cache de dados idêntica durante a troca. Documentos atuais preservados, sem repor cópias históricas. Nenhuma fixture, grant, publicação, gravação de ficha, criação de dossier ou submissão de manifestação ativa. Os três formulários aceites, as provas funcionais da manifestação e o L1 não foram repetidos.
Instalação nominal
Prévia observada no Edge em https://portal-investidor.test/management/investor-context-installation, sessão Osmane Nala, conta2. Destino e fingerprint coincidem. A única migration prevista é 2026_10_16_150000_create_investor_navigation_preferences;140000 permanece instalada uma única vez.
A aplicação apresentou «Conclua MFA nesta sessão; configuração de MFA isoladamente não autoriza a operação» e desativou o botão de instalação. Nenhum POST de instalação foi executado. Ledger150000=0, tabela ausente e nenhum recibo de instalação. Pedido ao utilizador: concluir login/MFA habitual da conta2 e comunicar a prévia. Sem pedido de nova autorização e sem recolher credenciais/códigos. A ativação fica pendente neste ponto, sem contornar autenticação.
Preservação e reversão
Conferência posterior por leitura: 292 tabelas iguais ao backup; nenhuma diferença inesperada. Diferenças técnicas delimitadas em cache/sessões e remember_token; após instalação também migration/auditoria nominal, quando aplicável. Dados de utilizador, relações, manifestações, interesses, documentos, papéis, B, COUNTRY02 e L1 preservados. A conferência usa transações de leitura, sem ensaios no ativo.
Reversão pós-uso preparada e não executada: parcial, compatível, com20 fontes funcionais retidas e build correspondente. Foi reconciliada com as fontes L1 atualmente instaladas. Conserva150000, ledger, preferências, vínculos e histórico; suspende alteração de contexto e mantém recuperação. O formulário/vínculo opcional da manifestação são retidos; não repor literalmente todo o código antigo nem restaurar a base sobre operações posteriores. Compilação e arranque/contrato de rotas da reversão conferidos na QA; prova funcional histórica reutilizada, sem repetir os formulários ou L1. Não se afirma equivalência visual integral durante reversão.
Estado do recorte
Falta somente autenticação MFA válida e instalação nominal, seguida da conferência operacional por leitura. O código novo já está no ativo; não descrever o ativo como inalterado ou a disponibilização integral como concluída. A ficha integral dos parques permanece aberta; não se iniciou outro lote. As estimativas QA/operacionais anteriores não são horas consumidas.
18/10/2026 — disponibilização da navegação concluída
Instalação autenticada da conta2 confirmada pelo recibo da1cae7b-a403-4256-9fd8-98ff2a69918d. Ledger150000=1, tabela criada e vazia, ledger140000=1. O Codex encontrou a operação concluída e não repetiu o POST; apenas actualizou a prévia por GET e conferiu base/recibo em leitura. URL, revisão exacta e mensagem «Já instalada»/«Instalação nominal verificada» observados no navegador.290 tabelas idênticas ao backup; diferenças delimitadas em migration/auditoria nominal, cache/sessões e remember_token, sem diferenças inesperadas. Não houve gravação, publicação ou submissão de ficha no ativo.
Candidata navegacao-contexto-QA-73f8bd1347ca, revisão exacta 73f8bd1347ca46c4e8ac6be7aa4bad2b180ba29032684a485cca341966c7e877. A pendência MFA anterior fica resolvida, sem repetir troca, instalação ou provas QA aceites. Reversão parcial compatível permanece preparada, não executada. Relatório e recibo finais em outputs/investmoz-navegacao-ativacao-20261018/para-revisao/. Ficha integral dos parques aberta e conferência dos novos anexos pelo utilizador não presumida.
18/10/2026 — ficha integral estruturada em QA
Implementada a extensão estruturada da ficha integral em QA, candidata parques-integral-QA-4e2dc76dbf27. Mantém o mesmo parque, UUID, versões, preparação privada cifrada e publicação expressa. Não há migration nova nem alteração no ativo. A ficha dos parques reais não é declarada completa: os dados e fontes ainda ausentes continuam desconhecidos. A Tempo confirmou nesta conversa uso informativo, sem reserva, elegibilidade ou aprovação automática; não foram criadas barreiras organizacionais ou campos obrigatórios para consultar/preparar um parque.
Funcionalidade acrescentada
| Grupo | O que ficou disponível |
|---|---|
| Títulos | Referências documentais de criação, uso do solo, licença e eventual regime especial; identificador, vigência, fonte e âmbito. Não atribui DUAT, licença ou benefício. |
| Fases e expansão | Código interno, situação, datas e expansão declarada. Fase não cria outro parque. |
| Lotes | Código único no parque, fase, área/unidade, situação declarada e geometria já associada. Não soma áreas sobrepostas nem calcula área livre; disponibilidade exige fonte/data e continua declaração histórica. |
| Empresas e ocupação | Organização existente ou menção preliminar privada, estado aprovada/construção/instalada/inativa, fase/lote e período. Não cria organização nem converte o operador em ocupante. Divulgação de identidade usa a classificação pública existente. |
| Indicadores | Emprego, investimento, produção, exportação, compras locais, utilização de recursos, resíduos e emissões, com valor, unidade, período, base/população, método, âmbito e fonte. Valores líquidos negativos documentados são preservados; ausência não é zero. Fontes divergentes distintas não são suprimidas. |
| Cadeia de valor | Âncoras, fornecedores e necessidades não satisfeitas, com referência a entidade/relação económica já existente ou descrição documental. Não associa por nome, cria oportunidade, confirma contrato ou publica menção preliminar automaticamente. |
Proprietário/promotor/operador/gestor, condições/tarifas, riscos/canal e revisão documental reutilizam L1. Atividades admitidas, recursos/infraestruturas/serviços, áreas por âmbito, território/perímetro, anexos, regime, vínculos económicos e dossier reutilizam os componentes existentes. Não se reconstruíram estes percursos nem se repetiram as suas aceitações. Novos detalhes suportam designação/descrição PT e EN quando fornecidas; não se traduziram nem preencheram factos reais sem fonte.
Decisões e dependências
Requisitos de referência na mesma matriz: MASTER-e1169a77-0100, M2-d0c06a75-0153, M2-d0c06a75-0186, MASTER-5dbf82c2-0049 e MASTER-c71ec7ad-0010. A origem da autorização QA e da política informativa é a decisão expressa da Tempo. Reutilização do envelope existente, limites de tamanho, UUIDs, validação de referências e whitelist pública são escolhas técnicas; não novas exigências de entidades distintas, certificação ou aprovação externa.
Antes de implementar foram identificadas dependências reais: schema L1, contrato editorial de versões, autenticação, organizações, anexos consultáveis e relações/GIS existentes. Foram reutilizados em clone isolado na porta55441, derivado da QA L1 anterior, com esquema de preferências copiado da QA de navegação; isto não é nova fotografia dos dados ativos. Nenhuma conexão nova à base ativa nem execução das migrations130000/140000/150000. O código base é o ativo atual, conferido por hashes, incluindo navegação contextual. Não houve nova consulta factual ao acervo: inventários/fontes aceites anteriores foram reutilizados; só dados sintéticos foram usados nas demonstrações.
Demonstração executada
36 verificações HTTP dirigidas passaram, incluindo preparação sem alteração pública, recuperação noutro login/MFA, publicação apenas dos itens selecionados, exclusão de notas/suporte/identificadores privados, conflito de versão, referências de outro parque, códigos/ocupantes/observações duplicados, remoção de fase/lote ainda referenciados, unidade/período/base, desconhecido distinto de zero e patch parcial. Três verificações adicionais em serviço confirmam valor líquido negativo, preservação de fontes distintas e recusa de duplicado exato, sem escrita.
No navegador, o editor mostra os seis grupos. A área sintética foi alterada para14,25ha e guardada em preparação privada v27; recuperação independente confirma14,25 no privado e12,5 na publicação v24. A apresentação pública mostra apenas os detalhes divulgados, com fonte/data/período e desconhecidos; a cadeia privada permanece ausente. Capturas EDITOR-QA.png e PUBLICO-QA.png. Não se declara ensaio volumétrico ou auditoria integral de acessibilidade/móvel.
As outras16 zonas permaneceram iguais por bytes, assim como organizações, documentos/anexos, GIS, relações, oportunidades, dossiers e manifestações. Nenhum mestre criado. L1 permaneceu igual por comparação dos grupos omitidos; não se repetiram os seus percursos funcionais. Lint, tipos e build passaram como complemento à demonstração, não substituto.
Restauro e reversão após uso
Backup QA final restaurado em parks_integral_restore_20261018_v2_test:55441, com296 tabelas iguais ao snapshot. Chave e ficheiros privados extraídos de ZIP e conferidos por hash. A primeira tentativa de comparação atingiu o limite de memória128MB numa tabela cartográfica; não foi declarada validada. A segunda usou512MB e validou o restauro. Não se apagou nem alterou qualquer base ativa.
No clone restaurado, o editor anterior real — fonte igual ao editor atualmente ativo — guardou a preparação v27→v28. Os hashes do fragmento privado integral e da projeção pública ficaram idênticos, mantendo14,25 privado,12,5 público e publicação v24. A reversão é parcial e compatível: retém os dois serviços de dados, restaura a UI anterior e usa o build correspondente. Não apresenta os novos controlos, mas conserva a recuperação pela API; repor a candidata devolve os controlos. Schema, versões, vínculos e histórico permanecem; não restaurar dump antigo sobre operações posteriores.
Entrega e limites
Fingerprint exacto 4e2dc76dbf27e0ec5efe228ca78aada6a0090c2575fcb61b0e8d6be57afb95f7;5 fontes (2 novas) e167 ficheiros de build. Pacote, manifesto, provas, procedimento e reversão preparados. Ativo: 1017 ficheiros runtime/build e três protegidos iguais por hash. A autorização recebida é exclusivamente QA; eventual disponibilização exige decisão separada, preflight do destino e backup/restauro fresco.
Conclui-se a capacidade estruturada deste recorte, não o preenchimento factual ou todos os critérios globais de ZEE/ZFI/parques. Perímetros reais, títulos, ocupantes, indicadores e traduções que faltam continuam pendências factuais; não se fabricam empresas, disponibilidade, licenças, benefícios ou dados atuais. A decisão da Tempo resolve o uso informativo, sem implementar reservas, elegibilidade ou aprovação automática. Mesma matriz/manual atualizados somente nos critérios afetados, sem nova matriz/backlog. Conferência destes anexos pelo utilizador permanece pendente.
18/10/2026 — organização sectorial e duplicações em QA
Candidata sectores-duplicacoes-QA-9b6097f97121, revisão SHA-256 9b6097f97121041664372bc04715c97cf661c349c9bfef01283d43cd296b1c5f. Correção preparada e demonstrada exclusivamente em QA: http://127.0.0.1:18542/sectores. O ativo permanece inalterado: 1017 ficheiros de execução e os três ficheiros protegidos conferidos. Apenas foi lida uma fotografia consistente do destino para a cópia QA; não houve escrita no destino.
Antes → depois
| Âmbito | Antes | Depois em QA |
|---|---|---|
| Catálogo sectorial | 12 entradas; combinado e Fintech autónomos | 10 sectores; Energia 8 e Mineração 7; Fintech 9 dentro de Mercado Financeiro 6 |
| Novos seletores sectoriais | Categoria combinada 2 disponível | 2 excluído; 9 identificado como “Mercado Financeiro — Fintech”; IDs mantidos |
| Mini-rede solar, oportunidade 2 | Sector 2, Energia e Mineração | Sector 8, Energia; mesma referência INV-MZ-ENE-002, slug, autoria, documentos e relações; versão incrementada e evento único |
| Conteúdo transversal | Artigo único e duas entradas de leituras já presentes no corpo | Mesmo documento/hash, associado às duas entradas sectoriais; oportunidade 2 uma vez; duas leituras repetidas suprimidas da apresentação |
| Fintech | Entrada autónoma e ligações por tecnologia/finanças | Especialização identificada, mesmo sector ID 9/documento/dossier/campos; relação editorial com TI preservada; sem cópia de conteúdo ou oportunidade |
| URLs antigos | /sectores/energia e /sectores/fintech | 301 para /energia-mineracao (escolha entre dois sectores) e /sectores/mercado-financeiro/fintech, respetivamente |
| Menus por contrato de acesso | Investidor 19 destinos, incluindo repetições de /investidor e /balcao-virtual | 17 destinos; com contexto 19→18; cenário de gestão 36→34; público 14→14. São contagens estruturais, não cliques observados |
| Cartão Energia | A mini-rede repetida na lista de localizações e no cartão | Uma entrada da oportunidade; localizações reunidas no seu cartão, sem alteração das relações |
| Oportunidades e contagens | 6 registos atuais | Mesmos 6 IDs 1–6; listas/cartões/pesquisa sem repetição do mesmo ID. Financeiro inclui Fintech no filtro, sem duplicar linhas |
| Atividade económica histórica | UUID a2000000-0000-4000-8000-000000000002, código energia, rótulo combinado | Registo e versão preservados; omitido de novas escolhas; recuperação explícita da versão 1 e relações já guardadas conservadas; sem divisão presumida |
Demonstração e preservação
- 56 controlos HTTP observados: filtros central/legado, catálogo, contagens, URLs antigos, seis oportunidades e artigos existentes; referência económica omitida das novas escolhas mas consultável na versão original.
- 30 controlos de serviço observados: classificação delimitada, contagens e fixture transacional Fintech sob Mercado Financeiro com o mesmo ID; ausência de cópia para TI; fixture revertida.
- Hashes de desk_cases, investor_journeys, investment_submissions, interest_requests, documents, opportunity_documents, sectors e preferências preservados; os eventos anteriores de auditoria também. O único dossier existente foi recuperado em duas leituras pelo seu proprietário, sem modificar o payload cifrado. Não foi reensaiado o percurso de autenticação em outra sessão/dispositivo nem os quatro formulários aceites.
- Três controlos do SQL proposto, em clones próprios na porta 55441: uma aplicação, replay sem segundo evento e preflight divergente abortado sem escrita parcial. O log append-only foi respeitado; o caso de conflito usou outra cópia QA.
- Cinco observações HTTP da reversão parcial, com base em modo read-only: novo URL Fintech continua funcional no código anterior; oportunidade 2 permanece em Energia.
- Menus inspecionados por quatro contratos de acesso. Destinos são normalizados por URL, preservando filtros e âncoras distintos. Não são métricas de cliques nem avaliação temporal de produtividade.
- Inspeção visual no navegador: catálogo, Fintech com artigo original e antigo URL combinado com escolha de sector; removida a repetição de Energia/Mineração na secção de leituras já ligada no corpo. As capturas e snapshots DOM estão em ../provas/.
- PHP: 21 fontes verificadas; lint, tipos e compilação passaram. Estas verificações complementam as demonstrações HTTP e de serviço.
Limites e casos abertos
Nenhum registo distinto foi fundido. A atividade económica combinada e a eventual especialização da oportunidade 6 permanecem como descritas em CASOS-AMBIGUOS.md. As referências históricas são preservadas; a ausência de factos não foi preenchida por inferência. O artigo de Mercado Financeiro que já estava vazio continua sem publicação. Fintech conserva FintechInvestment, campos, documentação e orientação regulatória existentes, cujas fontes não foram alteradas ou reensaiadas.
Esta correção não disponibiliza a candidata separada da ficha integral dos parques, nem encerra os requisitos globais dessa ficha. 140000 e 150000 permanecem uma vez no ledger QA; não foram executadas migrations. A conferência destes anexos pelo utilizador não é presumida.
Entrega
MANIFESTO-QA.json identifica cada uma das 29 fontes (1 nova), os 167 ficheiros da compilação e os hashes antes/depois. O único serviço novo é SectorOrganization; não há novo cadastro, pivot ou coluna. Os adaptadores TypeScript gerados pelo compilador não são uma substituição adicional de fontes: o build contém os resultados e o gerador existente volta a produzi-los.
Pacote único sectores-duplicacoes-QA-9b6097f97121.zip; reversão sectores-duplicacoes-QA-9b6097f97121-reversao.zip; SQL proposto DADOS-TRANSACIONAIS.sql; recibo QA e provas JSON anexos. Ver PROPOSTA-DISPONIBILIZACAO-REVERSAO.md para a operação futura. A matriz e o manual existentes recebem apenas a evidência deste recorte, preservando estados e critérios originais.
A proposta única e a reversão estão em outputs/investmoz-sectores-duplicacoes-QA-20261018/para-revisao/PROPOSTA-DISPONIBILIZACAO-REVERSAO.md. Esta secção não substitui a entrega L1, a navegação já instalada nem a ficha integral dos parques ainda em QA.
Sectores e duplicações — disponibilização de 18/10/2026
Disponibilizada a candidata sectores-duplicacoes-QA-e9f7d821b6f7, revisão e9f7d821b6f7d5bc38bde1a4e5312211bc71ace413ab214a31f2f6d410d9cb67, autorizada pela Tempo, procedimento DOC02. Energia e Mineração usam os cadastros individuais; Fintech mantém especialização no Mercado Financeiro, referências e particularidades existentes. Preservadas referências históricas e ligações antigas conforme o recorte QA aceite.
Backup/restauro fresco do destino validado; 34 fontes/167 ficheiros do build conferidos, sem recompilação. Saída de manutenção antes da prévia e execução autenticadas. Conta Osmane Nala (2), permissão e MFA conferidos pelo servidor. Uma execução: oportunidade 2 de sector2 para Energia8, versão1→2; operação27e6a658-d8bc-4d94-ab7b-b977ba56d141, PID4236/transação77905. Evento e recibo únicos; contexto SET LOCAL terminado na mesma ligação após COMMIT. Não repetir a operação ou instalar migrations: 140000/150000 presentes uma vez cada.
Conferência por leitura preservou restantes oportunidades, dossiers, manifestações, documentos, relações, preferências e atividades económicas em relação ao backup. A atividade histórica combinada e a oportunidade6 continuam sem reclassificação. Sem publicação ou fusão; sem guardar fichas/dossiers na conferência. Não se repetiram percursos aceites ou L1. A ficha integral dos parques continua separada e aberta.
Reversão parcial conforme o manifesto aprovado: mantém a rota compatível Fintech, dados posteriores, associação2→8, auditoria/recibos e esquemas. Nunca repor matriz/manual/backlog antigos nem dump sobre operações posteriores. Provas e recibo em outputs/investmoz-sectores-duplicacoes-ativacao-20261018/para-revisao/RELATORIO-ENTREGA.md e RECIBO-EXECUCAO.json; CONFERENCIA-FINAL.json na pasta superior. Conferência dos anexos finais pelo utilizador pendente; requisitos globais não encerrados pelo nome da entrega.
Apresentação pública dos documentos — correção preparada em QA, 18/10/2026
Por instrução expressa da Tempo, listas de legislação/documentos, ficha e recomendações documentais do simulador apresentam apenas informação útil para consulta: título, descrição, entidade emissora, fonte, datas conhecidas e ações de consultar/descarregar. Uma limitação relevante é apresentada uma vez por documento, em linguagem simples. A ação contextual «Abrir simulador fiscal» não expõe relações entre ficheiros e módulos nem confirma benefícios ou aplicação fiscal.
A projeção pública da API omite relações técnicas, identificadores de requisitos, citações de trabalho, hashes, caminhos e notas internas; o componente não recebe esses dados para os ocultar visualmente. As descrições originais e referências de rastreabilidade permanecem no cadastro e na gestão autorizada, incluindo evidências e revisões. Não se eliminam relações para limpar a apresentação. Fonte oficial aceite não exige nova validação de proveniência por esta alteração.
Em QA isolada, consulta/download dos três diplomas mantiveram os bytes originais. Sessão autorizada mantém a gestão; visitante e conta sem permissão não acedem à gestão. Fixtures transacionais de publicação, classificação privada, restrição e scan foram revertidas após demonstrar recusa de ficha/consulta/download e exclusão das recomendações. Os hashes das 29 fichas/documentos, 19 relações, 85 revisões e auditoria ficaram iguais. Não se repetiram formulários aceites, cálculos ou L1. O texto introdutório do guia comum também foi simplificado, sem alterar as suas etapas ou ações.
Preparação QA apenas, ativo inalterado. A disponibilização requer decisão separada. Ver outputs/investmoz-documentos-publicos-QA-20261018/para-revisao/RELATORIO-QA.md e MANIFESTO-QA.json para revisão, ficheiros e provas exatos. A alteração não encerra cobertura documental global nem a ficha integral dos parques.
Documentos públicos — disponibilização concluída em 18/10/2026
A Tempo autorizou a disponibilização da candidata documentos-publicos-QA-629d8347f147, revisão629d8347f147f9ebf0aad3e82ca5456c9c87cf80e826d33f6a9a364df7137690, após a propostaDOC01. A preparação QA descrita acima passou ao ativo https://portal-investidor.test, investemoz:5432. Sete fontes e168 ficheiros do build aprovado conferidos por hash; sem recompilação, migrations ou SQL de negócio. Backup/restauro fresco validado e portal fora de manutenção antes da conferência.
A conferência pública por leitura confirmou listas/ficha/API sem o bloco técnico nem metadados internos, consulta/download íntegros e ação contextual simples. Na gestão autorizada, a sessão da conta Osmane Nala(2) conserva29 documentos com hashes,19 relações e85 revisões, incluindo fiscal.iva.lei_22_2022. Esta conta identifica a conferência autenticada; não é atribuída como ator de uma instalação de esquema ou operação de dados, que não existem nesta entrega.
Catorze tabelas ficaram iguais ao backup restaurado, incluindo documentos/recursos/relações/revisões/auditoria, dossiers, oportunidades, zonas e migrations. 140000/150000 permanecem uma vez cada; associação sectorial2→8 e oportunidade6 em Mercado Financeiro preservadas. Sem guardar/publicar fichas ou reensaiar percursos aceites. O painel de recomendações na revisão do simulador não foi reaberto por exigir esse percurso; API e componente comum conferidos. A ficha integral dos parques mantém âmbito separado e aberto.
Recibo e provas em outputs/investmoz-documentos-publicos-ativacao-20261018/para-revisao/. Reversão técnica não executada: repõe apresentação/API anteriores e volta a expor metadados internos, limite explicitado na proposta; preserva dados, histórico, esquemas e documentos de auditoria atuais. Conferência dos anexos finais pelo utilizador pendente; critérios globais não encerrados por esta disponibilização.
Conta simples e pesquisas — preparação QA, 19/10/2026
Por pedido expresso da Tempo, a participação simples utiliza o registo/login Fortify existente, sem inscrição MFA obrigatória. Contas com MFA continuam a concluir o seu desafio; revisão, publicação, administração e operações privilegiadas conservam os controlos anteriores. A excepção de verificação de email cobre só a lista, a consulta e a conversa da própria participação simples submetida; criação, alteração, anexos e operações formais mantêm a verificação anterior (PROVAS-LIMITES.json). Não foram criados papéis. Candidata conta-pesquisa-QA-81cecc0009c3, revisão 81cecc0009c3851ea891b0ea83d40428f3badc46c95eb12827f6baa9d03b68a8. Código/base activos inalterados.
Preencher a manifestação e enviar encaminha o visitante para o registo; quem já tem conta pode usar a ligação de login. Nome/email são conservados, assim como o formulário, consentimento, oportunidade e chave de envio no mesmo separador. Após autenticar, confirmar o envio. O servidor atribui a titularidade à sessão, conserva os dados e contexto e devolve o recibo. A ligação «Acompanhar manifestações» abre a área existente. Repetir o mesmo envio devolve o mesmo recibo; não se atribuem manifestações antigas por coincidência de email. Esta continuação é temporária no separador; não promete recuperação noutro dispositivo. O envio deixou de depender de uma consulta DNS; mantém validação do formato do email. São escolhas técnicas, sem nova exigência organizacional.
Na área, as novas participações simples mostram resumo, estado, histórico, resposta da equipa e próxima acção, sem exigir uma ficha completa. A equipa usa as permissões e a lista de manifestações existentes; abre o acompanhamento pela ficha e responde na conversa. As notas internas de transição não são publicadas como respostas. O vínculo ao dossier dos fluxos existentes permanece; não se cria ou associa dossier por inferência.
As pesquisas públicas e autenticadas mostram pedido em curso, quantidade, «Não foram encontrados resultados para esta pesquisa» ou erro com «Tentar novamente». Termos/filtros permanecem editáveis; pedidos antigos são cancelados ou descartados. No erro, a interface identifica que os resultados ainda presentes são os anteriores. A repetição funciona por teclado e as mensagens usam status/alert e aria-live. Zonas reutiliza o transporte Inertia para o formulário GET existente.
Provas em outputs/investmoz-conta-pesquisa-QA-20261019/para-revisao/: registo sem MFA, envio/recibo/repetição, logout/login e recuperação; consulta/resposta/estado pela equipa com MFA; outra conta recebe 404, chave alheia 409 e interessado sem permissão administrativa 403; quatro estados de pesquisa pública e autenticada, erro de rede/HTTP500, repetição por teclado e corrida de pedidos. SQL confirma um recibo/uma submissão por envio demonstrado, não atribuição por email e preservação dos 17 registos MFA originais e das tabelas documentais, oportunidades, dossiers, zonas e migrations. O recorte não encerra critérios globais da matriz. Leitor de ecrã físico não foi ensaiado; semântica acessível e teclado foram conferidos. Os consumidores comuns foram inspeccionados; não foram repetidos todos os percursos aceites por perfil nem o ciclo completo de cada formulário que usa os selectores comuns.
Disponibilização futura, separada: conferir autorização e acção autenticada, destino, hashes e deriva desde o manifesto; confirmar backup/restauro fresco; aplicar apenas as fontes/build delimitados, sem migrations nem alteração/backfill de dados; renovar caches de código/configuração no procedimento operacional existente e conferir os percursos afectados. O build foi gerado na cópia isolada, com directório public/build, e pode ser conferido por hash. A reversão de código/build não apaga manifestações recebidas entretanto; manter os dados e a titularidade. Repor o código anterior retira o acompanhamento simples e pode voltar a permitir o envio anónimo: essa consequência deve ser considerada na decisão de reversão. Nenhuma destas acções foi executada no activo.
HML01 — proposta de homologação, 19/10/2026
19/10/2026 — HML01: conclusão QA reconhecida pela Tempo com base no relatório, sem conferência dos anexos locais. Proposta única de disponibilização em teste-investidor.tempo.co.mz, distinta de abertura pública; revisão 81cecc0009c3851ea891b0ea83d40428f3badc46c95eb12827f6baa9d03b68a8. Provas aceites reutilizadas, sem repetição. Backup/restauro fresco do destino e execução autenticada por realizar. outputs/investmoz-conta-pesquisa-homologacao-proposta-20261019/PROPOSTA-UNICA-HML01.md. Sem alteração da disponibilidade activa. Não foi executada a disponibilização remota. A proposta identifica 25 fontes e 187 ficheiros do build, sem migrations novas. Reversão deve usar a cópia anterior do próprio servidor de homologação e preservar dados posteriores; o ZIP de reversão local não substitui essa cópia. A abertura pública permanece uma decisão separada.
HML01 — inspecção por leitura, 19/10/2026
19/10/2026 — HML01, leitura parcial: HTTPS público 200; manifesto/frontend observado difere da candidata. Utilizador sem acesso administrativo; administrador indisponível. PHP/backend, configuração efectiva, schema, serviços e possibilidade de backup/restauro não confirmados. Compatibilidade remota pendente; nenhuma dependência adicional presumida ou corrigida; sem ensaios repetidos, disponibilização, migrations ou alteração de MFA/papéis. outputs/investmoz-HML01-inspeccao-leitura-20261019/RELATORIO-LEITURA-HML01.md. A origem do limite de execução é a instrução expressa de leitura apenas; a falta de acesso é uma limitação operacional confirmada, não uma nova exigência organizacional. A proposta permanece única e a homologação continua distinta da abertura pública.
Localização e associações — QA separado, 19/10/2026
19/10/2026 — incremento QA independente localização/associações, revisão 660a25e37e1e010be68b765e9ff22eacb1b8a963f1a70e1f293564e67f99c1f4. Pedido expresso da Tempo: harmonizar sem nova regra; reutilizar dados e preservar estados/fontes/histórico. Duas funções comprovadas no código/schema; títulos esclarecidos, reutilização explícita da hierarquia, principal/adicional/por indicar e aviso não destrutivo de divergência. Provas de gravação/recuperação, HTTP409, associação preliminar, filtros, mapa sem geometria e dossier em outputs/investmoz-territorios-localizacao-QA-20261019/RELATORIO-QA.md e para-revisao/MANIFESTO-QA.json. Snapshot real de 18/10/2026; exemplos de associação sintéticos; zero geometrias reais, sem prova de desenho positivo nem avaliação com utilizadores humanos. Sem migrations, MFA/papéis ou alteração activa; separado da HML01. Recorte não encerra o requisito global.
Percurso afectado: abrir os recursos da oportunidade QA; verificar a referência principal; reutilizar a hierarquia num novo preenchimento vazio; escolher finalidade e principal/adicional explicitamente; guardar, recarregar e editar. Uma hierarquia parcial compatível não gera conflito. Uma alteração territorial explícita divergente mostra aviso e preserva a referência anterior. Seleccionar recursos existentes no contrato canónico evita repetir a hierarquia. Na ficha pública, conferir localização e associação com estados próprios; uma relação preliminar não é confirmada pela mesma província. A pesquisa e o mapa usam a projecção pública existente; ausência de coordenadas mantém o registo sem posição inventada. O dossier conserva relações de planeamento pendentes.
Provas delimitadas já executadas: PROVAS-UI.json, PROVAS-REUTILIZACAO.json, PROVAS-DADOS.json e PROVAS-CONSUMIDORES.json. Não repetir percursos aceites não afectados. Candidata apenas para revisão em para-revisao/CANDIDATA-QA.zip; nenhuma aplicação automática. Disponibilização futura exige confronto com a revisão do destino e backup/restauro desse destino; reverter fontes/build coerentes preservando dados posteriores. HML01 e abertura pública continuam decisões separadas.
Inhambane v1 — preparação privada QA, 19/10/2026
19/10/2026 — Inhambane v1, lote QA separado a2b47f486332c78926202eb462c5238fac15ffc8afb2fe391e47b091541e2058. Fonte32c6ab160c50… comparada com anterior9f628cd57eb8…; 39 itens+5 condições reconciliados em30 rascunhos privados/30 locais,2 originais privados com scan real ClamAV. Repetição sem duplicação, fontes/intervalos/agregados preservados, nenhum total financeiro do lote. Backend de recuperação e confidencialidade demonstrado; login real/edição visual/publicação/percurso positivo destas fichas pendentes. Lacunas concretas: dados do promotor/contacto/taxonomia/local, proveniência documental no snapshot do dossier e reutilização biblioteca→anexo canónico. Sem novos papéis, migrations, alteração activa ou incorporação na HML01. outputs/investmoz-inhambane-v1-QA-20261019/RELATORIO-QA.md. Não encerra requisito global.
Manual curto e links: outputs/investmoz-inhambane-v1-QA-20261019/MANUAL-CURTO.md e FICHAS-QA.html. Gestão corrente pelo editor/recursos já existentes; não copiar valores históricos para CAPEX corrente nem declarar entidades mencionadas como promotores. A origem das restrições é o pedido da Tempo e o contrato já existente; gates editoriais do documento não são regras novas. Backup/restauro QA verificado; disponibilização futura exige procedimento próprio do destino.
Inhambane — conclusão técnica QA
19/10/2026 — Pendências técnicas Inhambane em QA independente, revisão 306e3ebc8a7036b36820d61cf5c828d6dd1126dc1891d9eaa59cde57f91f08ac. Reutilização de originais sem duplicação (31 ligações/2 originais), snapshot documental no dossier e navegador com saída/nova sessão/login/MFA/continuação comprovados; dez verificações de permissões passaram. 30 fichas reconciliadas; lacunas e origem das exigências por ficha/campo. Corrigida condição financeira OP-9f173ed3-0043. Sem nova importação, submissão/publicação, migrations, alterações de MFA ou catálogo de papéis, activo ou HML01. Provas e limites: outputs/investmoz-inhambane-tecnico-QA-20261019/RELATORIO-QA.md. Substitui apenas pendências técnicas do relato anterior; não encerra requisitos globais nem dados em falta.
Manual: outputs/investmoz-inhambane-tecnico-QA-20261019/MANUAL-CURTO.md. Dados/decisões: FICHAS-E-PENDENCIAS.html e PENDENCIAS-POR-FICHA.csv no mesmo directório.
Decisão Tempo — programas e carteiras Inhambane
19/10/2026 — Decisão expressa da Tempo nesta conversa: confirmar o enquadramento dos programas e carteiras do lote Inhambane. Programas/iniciativas agregadoras: IMZ-INH-003, 014, 015, 016, 018, 020, 021A, 023, 029, 031 e 038. Carteira de oportunidades/PME: IMZ-INH-021B. O enquadramento funcional não cria categoria técnica, papel ou entidade promotora. Distinguir responsável do programa de promotores das componentes; abrangência de implantação; orçamento do programa de investimento por projecto. Campos próprios de obra ou empresa individual não são exigíveis apenas pela classificação provisória investment_project. Manter fontes, componentes, permissões e revisão/publicação existentes; desconhecidos não recebem valores fictícios. Confirmação não resolve dados ausentes nem autoriza publicação. Inspecção do contrato actual: seis categorias base, sem programa/carteira; as doze fichas continuam tecnicamente investment_project. Aplicabilidade no validador/editor ainda necessita de adaptação QA dirigida; não declarada concluída nem requisitos globais encerrados. Nenhuma alteração de dados, fonte executável, importação, ensaio aceite, activo ou HML01 nesta confirmação.
Programas/carteira — delta implementado em QA
19/10/2026 — Aplicado em QA o enquadramento Tempo às 11 iniciativas/programas e carteira 021B, revisão 3968efbbde8ca67354fe8b5787d5f1e2759c3676dd32bc7e70fd17568469b1ac. Mesmo editor/validador e JSON versionado; responsável, abrangência e orçamento agregado distintos dos dados de componentes. Aplicabilidade explícita; desconhecido não é não aplicável. 141 verificações+6 dirigidas e navegador em programa/carteira; 18 outras fichas e seis públicas preservadas. Sem importação/publicação, migrations, MFA/papéis, activo ou HML01. Pendências técnicas de aplicabilidade anteriores superadas neste recorte; dados comuns ausentes permanecem. Não encerra requisitos globais. Provas: outputs/investmoz-inhambane-tecnico-QA-20261019/enquadramento/RELATORIO-QA.md.
Enquadramento confirmado — aplicação em QA
Abrir a ficha no editor habitual. Natureza da ficha distingue projecto concreto, programa e carteira. Identificar o responsável real do programa/carteira e o contacto autorizado sem o confundir com promotores das componentes. Reutilizar os recursos territoriais para a abrangência; preencher implantação apenas quando for objecto próprio da ficha.
Em cada grupo escolher aplicável, não aplicável ou informação em falta. Não aplicável mantém os dados anteriores recolhidos para consulta e retira apenas a sua exigência como dados próprios do agregador. Informação em falta continua pendente e não autoriza submissão. Aplicável volta a mostrar os campos e a activar o contrato anterior. Guardar, recarregar e conferir. Retirar o enquadramento de programa/carteira repõe os requisitos do projecto concreto, preservando os outros dados.
Orçamento agregado é separado de investimento/financiamento de cada projecto: conservar data-base, fonte, intervalos e componentes incluídas, sem somar novamente. A classificação nunca confirma financiamento, licença, terreno ou disponibilidade. As fichas concretas mantêm os requisitos aplicáveis e o fluxo habitual de revisão/publicação. Não publicar por concluir este delta.
Provas e lista actual: outputs/investmoz-inhambane-tecnico-QA-20261019/enquadramento/RELATORIO-QA.md e TABELA-30-FICHAS.csv. As pendências de enquadramento das 12 fichas nos relatos anteriores ficam superadas por este ajuste; as lacunas de informação permanecem.
HML01 — acesso SSH e leitura autenticada
19/10/2026 — HML01: primeira inspecção SSH autenticada concluída por leitura. CLI PHP8.4.17, PostgreSQL17.11/PostGIS3.6.4, lock igual, fila/ClamAV activos. routes/web.php diverge; 75 migrations registadas e13 ficheiros sem registo por reconciliar. Schema completo/FPM/vendor/scanner/backup-restauro ainda por confirmar na segunda recolha. Não declarar suficiência das25 fontes/build. Sem comandos de mutação, instalação, migration, reinício, disponibilização ou alteração de MFA/papéis. Pacote/proposta HML01 preservados; incrementos posteriores separados. outputs/investmoz-HML01-inspeccao-leitura-20261019/RELATORIO-SSH-AUTENTICADO.md. A segunda recolha usa autenticação local interactiva sem guardar a palavra-passe. Não executar comandos de correcção com base neste inventário parcial; apresentar divergências antes da troca.
HML01 — conclusão da leitura autenticada
19/10/2026 — HML01: inspecção SSH autenticada concluída por leitura. Git HEAD14ad2f60c5465a15e30aa1c0a9e9047103c17c20; PHP8.4/FPM, vendor/lock, PG17.11/PostGIS3.6.4 identificados.20 precondições das25 fontes coincidem e5 divergem. desk_cases ausente é dependência directa não satisfeita no acompanhamento.75 migrations registadas/13 ficheiros sem registo, sem execução automática. Scanner Unix versus adaptador TCP a reconciliar nas operações documentais; cobertura backup/restauro do portal não demonstrada. Não aplicar directamente. Sem alterações remotas, disponibilização, migrations, MFA/papéis ou incorporação de incrementos. Provas: outputs/investmoz-HML01-inspeccao-leitura-20261019/RELATORIO-SSH-AUTENTICADO.md. Não executar os13 ficheiros por estarem pendentes. Reconciliar a dependência efectiva e as diferenças de fonte antes de preparar uma troca. A rotina de backup tem de abranger a base e originais/configuração do destino; ferramentas instaladas não provam restauro. Nenhum ensaio funcional aceite repetido.
HML01-R1 — reconciliação compatível em QA
19/10/2026 — HML01-R1 reconciliada em QA: 27 fontes/build; zero migrations; cinco fontes divergentes resolvidas; scanner Unix real e PING/VERSION remoto como www-data; restauro144 tabelas e reversão da apresentação com dados posteriores preservados. Sem disponibilização remota, MFA/papéis ou incrementos posteriores. outputs/investmoz-HML01-reconciliacao-QA-20261019/PROPOSTA-CONSOLIDADA-HML01-R1.md
Referência permanente: decisões da Tempo e AGENTS.md,12/10/2026. Guarda VirtualDesk e socket Unix são opções técnicas de compatibilidade. As13 migrations foram auditadas individualmente; nenhuma será executada na revisão. A reversão ensaiada repõe a apresentação anterior com backend R1 conservado, sem restaurar a base sobre dados posteriores. Não equivale a rollback integral do código antigo. O clone tinha0 oportunidades/negócios/documentos e29 dossiers não públicos; não se promove publicação ou conclusão geral com base nestas provas. PHP/PostGIS do clone diferem parcialmente do destino. Procedimento, backup/restauro, hashes e limitações em MANUAL-DELTA.md e na proposta. Acesso de homologação permanece distinto de abertura pública.
Limites confirmados pela Tempo para decisão e execução
19/10/2026 — A decisão de disponibilização pode incidir sobre a revisão 9975dfce80b8, exclusivamente em teste-investidor.tempo.co.mz. Não constitui autorização de execução nesta sessão nem abertura pública. Não é necessária outra candidata, recuperação integral do servidor ou repetição das provas QA aceites. O anexo original e os ZIP existentes ficam preservados; esta secção complementa o seu procedimento.
- Backup fresco e consistente: antes da troca, impedir escritas na aplicação, trabalhadores de filas, tarefas agendadas e restantes consumidores que possam alterar a base ou os ficheiros abrangidos, durante toda a cópia conjunta. Se não for possível, demonstrar a reconciliação da base com os ficheiros e referências. Registar o intervalo e a evidência de consistência; não presumir que o modo de manutenção HTTP suspende todas as escritas.
- Recuperação utilizável: assegurar e verificar acesso protegido à chave por um mecanismo que não dependa exclusivamente do perfil Windows actual, sem expor a chave. Registar proprietário, grupo, modos e ACL relevantes dos ficheiros/directórios necessários ao restauro Linux, bem como a correspondência dos identificadores no destino de restauro. A preparação anterior não demonstra ainda estas duas condições.
- Scanner no destino: após configurar
CLAMD_SOCKET=/var/run/clamav/clamd.ctl, confirmar um scan real pelo fluxo documental da aplicação e guardar a evidência do processamento e resultado, preservando a confidencialidade. PING/VERSION demonstram comunicação, não processamento documental. Esta prova no destino permanece por realizar. - Reversão explícita: repor apenas a apresentação anterior, conservando as 27 fontes R1, a configuração Unix, a base e todos os dados/uploads posteriores. Não restaurar uma base antiga sobre dados novos nem executar migrations down. Esta é a reversão ensaiada; não é reposição integral do PHP anterior.
- Homologação do vínculo ao dossier: a ligação positiva permanece não demonstrada. Verificar com oportunidade/dossier e conta reais já existentes e autorizados, quando disponíveis; não criar dados fictícios nem publicar para fabricar o cenário. Se não existir contexto aplicável, conservar a lacuna expressa na homologação.
Estas condições têm origem na instrução expressa da Tempo nesta conversa. Não foram executadas novas provas, alterações no destino, migrations, publicação ou mudanças de MFA/papéis. Territórios, Inhambane e restantes incrementos continuam separados até reconciliação expressa.
Pré-disponibilização e divergência nova no destino
19/10/2026 — Pré-disponibilização: destino mudou para9bc450e87c5f; três pré-condições R1 falharam. Sem manutenção ou escrita remota. R2 49f21a874c18 preparada em QA para preservar páginas legais e apresentação;24 fontes R1 idênticas,3 reconciliadas; zero migrations. Backup fresco/scan real no destino por realizar; dossier positivo não demonstrado. Decisão sobre revisão nova necessária antes da troca. Ver outputs/investmoz-HML01-reconciliacao-destino-R2-20261019/PROPOSTA-RECONCILIACAO-R2.md.
A chave nova tem envelope portável cifrado por frase e cópia protegida fora do perfil Windows, sem exposição de segredos. Só estará associada a backup utilizável quando a cópia fresca for feita e restaurada. Reversão da revisão efectivamente instalada conserva as suas27 fontes; a cópia da apresentação anterior deve corresponder ao destino actual, sem reutilizar inadvertidamente o build de reversão antigo R1.
R2 disponibilizada apenas na homologação
19/10/2026 — R2 49f21a874c18 instalada exclusivamente em homologação por autorização da Tempo.27 fontes/189build conferidos; backup fresco consistente/restauro144 tabelas e33 ficheiros conferidos; cópia cifrada/chave portável também fora do perfil Windows; metadados/ACL Linux registados. Zero migrations/MFA/papéis/importações/publicação.502 preexistente corrigido com buffers FastCGI apenas no vhost da homologação; HTTP200. Scan real no fluxo da aplicação ainda pendente de autenticação autorizada; vínculo positivo ao dossier não demonstrado. Ver outputs/investmoz-HML01-reconciliacao-destino-R2-20261019/RELATORIO-DISPONIBILIZACAO-R2.md.
Reversão: usar o build da cópia fresca deste destino, conservando as27 fontes R2, configuração Unix e dados posteriores. Manter os buffers FastCGI corrigidos; restauro do vhost anterior é operação separada e pode reintroduzir502. Recuperação cifrada em C:/laragon/private/InvesteMoz-Recovery/HML01-R2-20261019, fora do webroot/perfil, usando a frase introduzida localmente; não partilhar o envelope/chaves na conversa. Confirmar scan real antes de o dar como demonstrado.
Diagnóstico de autenticação na homologação R2
19/10/2026 — Diagnóstico de acesso por leitura: a conta indicada pela Tempo não existe na homologação nem no restauro anterior à R2 e não consta da configuração actual de gestores. Não foi testada palavra-passe nem alterado MFA, conta ou permissão. Scanner real no fluxo documental continua não demonstrado por falta de sessão real autorizada; conta simples não confere gestão documental. Aguardada indicação de conta existente autorizada ou tratamento separado do acesso pela Tempo.
Disponibilidade efectiva de contas de gestão
19/10/2026 — Inventário de contas por leitura: existem14 contas na homologação, apenas1 com email verificado,0 na configuração de gestores e0 autorizadas por manage-portal. Portanto não há actualmente uma conta gestora que a Tempo possa simplesmente seleccionar para a prova documental. A pendência é habilitar uma conta real segundo a decisão e os mecanismos existentes, sem criar papéis ou contornar verificação/MFA. Nenhuma conta, palavra-passe ou permissão foi alterada. Scan real continua não demonstrado.
Preparação DOC01 de acesso documental limitado
DOC01 d9bf1ad47489 é um incremento separado da R2 instalada 49f21a874c18, preparado exclusivamente em QA. Não foi instalado nem concedeu permissões. A conta real indicada pela Tempo foi registada pelo utilizador e o email consta confirmado; o MFA ainda aguardava conclusão na última leitura. Nenhuma confirmação foi fabricada.
Decisão e âmbito
Origem: autorização expressa da Tempo para preparar a sua conta e conceder somente o acesso documental necessário, com auditoria. A implementação existente só oferece manage-portal, que abriria a gestão global; o módulo opcional de perfis não está instalado. DOC01 reutiliza a lista protegida de configuração, o verificador MFA existente, os quatro endpoints e o editor de ficheiros existentes. A lista PORTAL_DOCUMENT_MANAGER_EMAILS, vazia por omissão, não concede manage-portal nem cria um papel organizacional.
A pessoa autorizada só pode carregar, listar, recuperar após scan limpo e repetir scans dos seus próprios ficheiros cuja origem seja portal-services. Não pode publicar, editar recursos públicos, ver ficheiros de outros titulares/contextos ou gerir outros módulos. A autorização exige email confirmado e desafio MFA concluído na sessão, reutilizando a validade de 15 minutos do verificador privilegiado existente. Configuração MFA por si só não substitui o desafio. O acesso de gestores preexistente permanece sujeito às suas regras.
Ficheiros e provas
Sete fontes: app/Services/DocumentManagementAccess.php, app/Http/Middleware/EnsureDocumentManagement.php, app/Http/Controllers/PortalServicesController.php, app/Http/Controllers/DocumentMalwareController.php, config/portal.php, routes/web.php, resources/js/pages/portal/manage.tsx. Dois ficheiros novos (serviço e middleware); cinco alterados. Build compilado; seis ficheiros PHP sem erros de sintaxe. As 34 verificações transaccionais isoladas passaram: email/MFA, exclusão por titular/origem, recusa de download sem scan e de nova análise alheia, listagem sem metadados globais privados, upload privado em quarentena, não publicação, auditoria, revogação imediata e preservação do gate global. Todos os utilizadores/documentos sintéticos foram revertidos na base QA; nenhum foi criado no destino. Ver PROVAS-ACESSO-DOCUMENTAL.json, BUILD-CHECKS.json e MANIFESTO-DOC01.json.
Procedimento de disponibilização e reversão
Antes de instalar DOC01, conferir hashes R2 das cinco fontes e inexistência dos dois novos ficheiros; qualquer divergência interrompe a troca. Obter cópia fresca protegida das fontes/build/configuração e base/ficheiros privados de forma consistente com suspensão de escritas, preservando a conta e os dados posteriores à R2. A chave de recuperação deve continuar utilizável fora do perfil Windows e os metadados Linux devem acompanhar a cópia. Não reutilizar o dump anterior ao registo para reverter permissões.
Instalar apenas estas fontes e o build conferido, sem migrations ou dependências. Confirmar unicidade, email e MFA da conta real; registar a decisão/grant em audit_events e configurar apenas essa conta na lista limitada, conservando o resto da configuração e permissões Linux. Não marcar email/MFA como concluídos. Confirmar no navegador upload de ficheiro identificado não público, processamento real Unix pela aplicação, recuperação autorizada e recusa indevida. Não publicar. Documentar os resultados efectivos.
Para revogar, retirar a conta da lista limitada e auditar a revogação. Para reverter DOC01, repor fontes/build/configuração anteriores a DOC01, removendo os dois ficheiros novos apenas depois da reposição das rotas. Preservar uploads, resultados de scan, auditoria e todos os dados posteriores; não restaurar a base por cima. A reversão específica da apresentação R2 é distinta e continua a conservar as 27 fontes R2/configuração Unix/dados.
Limites actuais
O scan real no destino, a recuperação documental autorizada e a recusa pelo fluxo remoto continuam pendentes. O vínculo positivo ao dossier continua não demonstrado; este acesso não instala Balcão, perfis ou outros componentes. Não há publicação, importação, alteração do activo ou incorporação dos incrementos Inhambane/territoriais na R2. O aparente ciclo de segurança chegou à página /settings/security; “Update password” é a primeira secção, e “Enable 2FA” está abaixo. Não foi necessário alterar autenticação.
Confirmação real do MFA da conta documental
19/10/2026 — Após confirmação do utilizador, leitura do destino confirmou conta existente, email e MFA confirmados. Nenhuma verificação artificial ou gestão global concedida. O desafio MFA numa nova sessão aguarda confirmação do utilizador; DOC01 permanece preparado em QA, sem instalação. Scan real e dossier positivo continuam pendentes. Prova: outputs/investmoz-document-access-QA-20261019/PROVA-MFA-CONFIRMADO.json.
DOC01 instalado com acesso documental próprio
19/10/2026 — A conta real indicada pela Tempo concluiu o registo, confirmação de email, configuração MFA e nova entrada com desafio MFA. A leitura do servidor confirmou email/MFA sem qualquer marcação artificial. Foi instalado na homologação o incremento separado DOC01 d9bf1ad47489, sobre R2 49f21a874c18: sete fontes, build conferido, zero migrations ou novos papéis organizacionais. A lista protegida PORTAL_DOCUMENT_MANAGER_EMAILS contém apenas a conta autorizada; PORTAL_MANAGER_EMAILS e as restantes contas não foram alteradas. O grant foi auditado como document_scope_granted com origem na autorização expressa da Tempo.
O navegador abriu /management/portal-services com o título Os meus ficheiros privados, mostrando apenas upload e gestão dos próprios ficheiros da origem portal-services, sem publicação nem gestão global. Os controlos existentes exigem email e desafio MFA recente (15 minutos); repetir login com MFA quando expirar. Descarregar exige scan limpo e hash correspondente. A prova visual é outputs/investmoz-document-access-QA-20261019/BIBLIOTECA-PRIVADA-DOC01.jpg. As 34 verificações QA e build aceites não foram repetidos.
Antes desta instalação foi obtido backup fresco com HTTP em manutenção, worker suspenso e bloqueio de escritas nas 144 tabelas; ficheiros/configuração inventariados antes/depois. As 144 tabelas foram restauradas e comparadas num clone isolado; 33 ficheiros privados/configuração e metadados Linux conferidos, ACL registadas. A cópia cifrada e o envelope portável estão também fora do perfil Windows, em C:/laragon/private/InvesteMoz-Recovery/DOC01-20261019. A frase existente não foi guardada nem substituída. Após instalação, manutenção terminada e worker retomado.
Reversão DOC01: revogar a entrada da lista limitada com auditoria; repor as cinco fontes anteriores e o build de REVERSAO-DOC01.zip, retirando os dois novos ficheiros depois da reposição das rotas. Usar a configuração anterior protegida do backup DOC01, preservando quaisquer alterações legítimas posteriores; não restaurar a base por cima nem eliminar uploads, scans ou auditoria. A configuração Unix, SMTP e o ajuste Nginx anteriores ao DOC01 permanecem na cópia. A reversão de apresentação R2 é distinta.
Pendente: o carregamento automatizado foi impedido pela falta de permissão local de URLs de ficheiro na extensão Edge. O navegador também bloqueia a automação da página interna de extensões; foi entregue uma alternativa manual pela própria interface, com o ficheiro identificado TESTE-PRIVADO-DOC01.txt na pasta Downloads. Nenhum ficheiro foi enviado pelo agente nesta tentativa. O scan real, recuperação autorizada e recusa remota de acesso indevido ainda não estão demonstrados. A recusa de outra conta foi verificada em QA isolado. O vínculo positivo ao dossier continua não demonstrado. Sem publicação, dados fictícios de negócio, importação ou alteração do activo. DOC01 continua identificado separadamente da R2/HML01 e dos incrementos posteriores.
Ensaio documental DOC01 concluído na homologação
19/10/2026, 17:48 CAT — O utilizador carregou TESTE-PRIVADO-DOC01.txt pela interface existente. A aplicação colocou-o no armazenamento privado/quarentena e o worker executou um scan real pelo socket Unix /var/run/clamav/clamd.ctl: ClamAV 1.4.3, resultado clean, uma tentativa, 8 ms, com início e fim registados às 17:48:31 CAT. A interface passou a mostrar análise limpa e Consultar cópia privada.
A recuperação foi efectuada no navegador pela sessão real autorizada com MFA. O SHA-256 do original, ficheiro armazenado, ficheiro analisado e cópia descarregada coincide: 67bbac530993abaddff7725a2651b376a0223a8a791e23ccb36c2540a2dfbe63. O mesmo download sem autenticação devolveu HTTP302 para o percurso de login, sem entregar o ficheiro. A recusa de outra conta autenticada foi verificada nas provas QA isoladas aceites, não repetida com contas fictícias no destino.
O ficheiro continua classificado como interno, sem recurso público associado (zero) e sem publicação. As concessões e o upload estão auditados; a conta mantém manage-portal recusado. As fontes esperadas R2 + delta DOC01 conferem; migrations permanecem75, sem execução de migrations. Não se repetiram importações nem os percursos aceites.
Provas: PROVA-SCAN-REAL-E-RECUPERACAO.json, SCAN-REAL-DOC01.jpg e os recibos de instalação/backup na mesma pasta outputs/investmoz-document-access-QA-20261019. O ficheiro está disponível na biblioteca privada da conta em /management/portal-services.
Este resultado encerra a pendência do scan real e da recuperação documental deste ensaio. O vínculo positivo ao dossier continua não demonstrado; não confirma disponibilização integral do Balcão ou dos restantes componentes. DOC01 permanece incremento identificado separadamente da R2/HML01. Sem publicação, abertura pública ou alteração do activo.
Disponibilização integral na homologação — saldo consolidado
19/10/2026. Leitura fresca exclusivamente de teste-investidor.tempo.co.mz, Git9bc450e87c5f e composição identificada R2 49f21a874c18 + DOC01 d9bf1ad47489. A prova documental está encerrada; o vínculo positivo ao dossier continua aberto. Este saldo distingue destino de homologação, QA e activo; não certifica a aplicação completa nem altera o activo. É uma vista derivada da mesma matriz, sem novos requisitos ou backlog.
Critério dos quatro estados
Disponível: recorte instalado e sustentado por prova identificada, incluindo provas QA aceites reutilizadas quando indicado. Instalado mas desabilitado: fontes/estruturas presentes com gate efectivo desligado; não certifica prontidão operacional. Ausente: falta estrutura ou incremento/dados necessários ao componente, mesmo que haja fontes. Não demonstrado: a evidência não permite certificar a função no destino; não equivale a ausência. Cada componente tem exactamente um estado. As frentes históricas agregadas mantêm o nome/IDs da matriz; um recorte encerrado não fecha automaticamente toda a frente.
| Componente | Estado na homologação | Evidência / próximo passo |
|---|---|---|
| Documentos públicos | Ausente | Acervo público não transferido: portal_resources=0. O documento DOC01 é interno e separado. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Ficha integral dos parques | Ausente | Faltam editorial_draft e operational_details em investment_zones; catálogo vazio. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Navegação contextual e manifestação de interesse | Ausente | Falta investor_navigation_preferences/150000; o recorte de participação R2 está separado abaixo. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Referências económicas — lote mínimo | Ausente | Falta economic_activities.metadata/120000; existem só seis actividades nesta base. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Sectores e duplicação visual | Instalado mas desabilitado | Adaptador legado desabilitado; não transpor recibos do activo para este destino. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Duplicados distintos — deteção e consolidação | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Fintech — enquadramento específico | Instalado mas desabilitado | Conteúdo sectorial sujeito ao adaptador legado desabilitado; não comprova integralidade do recorte Fintech. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Legado — conteúdo restante | Instalado mas desabilitado | LegacyContent.available=false, flags de entrega false. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Piloto agronegócio | Ausente | Sem oportunidades no destino; dados e recorte QA não foram transferidos. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Percurso do investidor — 19 etapas | Ausente | Faltam colunas do percurso, schema Balcão e definição de instalação; INVESTOR_PATH_ENABLED=false. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Fiscal/contributivo e exportações | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Negócios existentes e classificação | Instalado mas desabilitado | Tabelas de negócios existentes presentes, INVESTMOZ_MNE_ENABLED=false, zero negócios. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Negócios similares | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Importação de empresas/empreendimentos | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Fundos | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Comparador societário e modelos | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Capitalização/private equity e Bolsa | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Checklists versionadas | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Indicadores de utilização | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Jornadas educativas | Instalado mas desabilitado | Tabelas e código educativos presentes; education.enabled=false. Reconciliar fontes, schema/configuração e provas aceites por delta antes de disponibilizar. |
| Partilha documental individual e variantes de sala | Não demonstrado | DOC01 é acesso próprio; não demonstra partilha ou salas. As tabelas partnership_rooms/documents estão ausentes. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Restauro, modalidades e SLA | Não demonstrado | Backup/restauro do recorte concluído; modalidades e SLA integrais não demonstrados, escalonamento desabilitado. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Cartografia e consumidores territoriais restantes | Não demonstrado | Fontes/tabelas geográficas presentes; não há prova integral de todos os consumidores e territorial.enabled=false. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Acessibilidade e restantes consumidores | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Fechos de operação/avaliação documental | Não demonstrado | O recibo histórico não demonstra este componente no destino actual; não se presume ausência nem conclusão. Localizar o critério e a prova correspondente na matriz; verificar apenas a lacuna do destino. |
| Conta simples, login e MFA privilegiado | Disponível | Registo/email/MFA e nova entrada reais confirmados; participação simples usa o recorte R2. Preservar controlo existente, sem repetir o percurso aceite. |
| Manifestação simples, recibo e acompanhamento do interessado — R2 | Disponível | 26 fontes R2 coincidem; routes/web.php coincide com o delta DOC01 autorizado. Provas QA aceites reutilizadas; não certifica toda a operação da equipa. Preservar; vínculo positivo ao dossier continua aberto. |
| Pesquisa — estados do recorte R2 | Disponível | Fontes R2 de pesquisa conferidas e provas QA aceites reutilizadas. Não é uma nova certificação de todos os módulos. Preservar; conferir somente consumidores que a consolidação alterar. |
| Biblioteca privada própria, scanner e recuperação — DOC01 | Disponível | Scan real Unix clean, recuperação no navegador/hash igual; anónimo302/login. Sem publicação; negativa de outro titular coberta em QA. Trecho documental encerrado; preservar permissões e ficheiro privado. |
| Backup/restauro e reversão do recorte R2 + DOC01 | Disponível | Cópia consistente/restauro isolado144 tabelas e33 ficheiros conferidos; recuperação portável e metadados Linux. Cópia fresca no momento de futura troca; reversão conserva dados posteriores. |
| Balcão Virtual | Ausente | VirtualDesk.installed=false; faltam as dez tabelas base e as extensões de eventos/tarefas. Fontes presentes não equivalem a instalação. Incluir três migrations existentes, fontes/build compatíveis, prova de instalação e acção autenticada na consolidação. |
| Vínculo positivo e recuperação do dossier | Não demonstrado | desk_cases ausente; zero jornadas e submissões da conta documental. Projectos legados privados não autorizam ligação automática. Depois da instalação, usar dossier real autorizado; não criar dados fictícios nem inferir titularidade. |
| Cadastro canónico e recursos de oportunidade | Ausente | Faltam management_version, rascunho/controlo de submissão, opportunity_documents/images/location_drafts e storage_encryption. Reconciliar 020000/030000; não confundir cadastro base vazio com editor integral instalado. |
| Perfis, revisão independente e publicação | Ausente | PortalProfileAccess.installed=false; faltam as quatro tabelas e colunas de autorização. Incluir dependência040000 identificada; nenhuma atribuição ou alteração MFA/papéis automática. |
| Bolsa de parcerias e salas internas | Ausente | Faltam nove tabelas e extensões de portal_partnerships; catálogo base vazio. Reconciliar160000 e interfaces; preservar consentimentos e confidencialidade. |
| Onde se localiza / associações territoriais e produtivas | Ausente | Harmonização é entrega QA separada; recursos canónicos requeridos não instalados no destino. Integrar expressamente o delta territorial e conferir apenas consumidores afectados. |
| Lote privado Inhambane —30 fichas | Ausente | Destino tem zero oportunidades e apenas o ficheiro técnico DOC01; lote QA não transferido. Transporte/reconciliação privada idempotente pelo mecanismo existente, não repetição cega da importação; publicação continua expressa. |
| Enquadramento das12 fichas de programas/carteira | Ausente | Incremento e dados QA separados; as30 fichas não existem no destino. Conservar decisão Tempo sobre003,014,015,016,018,020,021A,023,029,031,038 e021B ao reconciliar o lote. |
| Originais partilhados e referência documental no dossier — Inhambane | Ausente | Três fontes novas não estão no destino e13 fontes diferem do manifesto técnico QA; não aplicar o pacote isoladamente. Fusão explícita com R2/DOC01, recursos canónicos e Balcão; preservar originais/permissões/versões. |
| Orientação assistida/IA | Instalado mas desabilitado | Tabelas/código AI presentes; investmoz_ai.enabled=false. Integração com Balcão depende também do schema ausente. Manter gate; separar habilitação de dados e chamadas externas. |
| Integração externa SuiteCRM | Instalado mas desabilitado | suitecrm.enabled=false; não houve envio externo. Reconciliar conectividade/consentimento apenas no recorte aprovado. |
| Operação administrativa e resposta da equipa na homologação | Não demonstrado | Configuração tem uma entrada sem correspondência a conta existente; zero gestores verificados. Conta documental não tem manage-portal. Concretizar acção autenticada de instalação/operação sem alargar silenciosamente o acesso documental. |
| Gestão editorial da biblioteca | Ausente | Falta portal_resources.editorial_content/180000. DOC01 não concede publicação ou edição pública. Integrar somente se incluída no recorte consolidado; preservar revisão/publicação expressas. |
Balcão e dossier — resolução da dependência
O Balcão está ausente, não apenas desabilitado: dez tabelas base ausentes; desk_events.event_order e tasks.desk_case_id ausentes; VirtualDesk.installed=false. Não existe dossier Balcão que possa ser seleccionado para a prova positiva. Há16 projectos privados legados, zero jornadas e zero submissões nesta base; não se assume equivalência entre projecto legado, investment_dossier e desk_case nem titularidade pela coincidência de dados.
Dependência mínima do instalador existente, nesta ordem:
2026_10_07_190000_create_internal_virtual_desk: dez tabelas base, FKs, versionamento e histórico.2026_10_08_120000_extend_desk_investor_guidance: ordem de eventos, ligações de investidor/projecto/jornada/manifestação e tarefas com aceitação/histórico.2026_10_09_190000_prepare_investor_path: colunas de percurso e definição versionada; não activa a navegação nem publica serviços por si só.
Novo ensaio de dependências em QA: as três migrations existentes aplicaram-se no clone isolado do destino; predicate do Balcão passou a true; percurso ficou desabilitado até flag explícita local; nenhum dossier ou serviço foi publicado. As seis verificações passaram e todas as estruturas/registos foram revertidos transaccionalmente. Isto demonstra compatibilidade de schema, não a ligação positiva, o fluxo completo ou uma reversão com dados posteriores. Não foram executadas migrations no servidor.
Depois da instalação consolidada, demonstrar vínculo e recuperação numa nova sessão usando dossier real autorizado. Se ainda não existir dossier autorizado, registar essa falta de dados/acção real; não fabricar um para encerrar o requisito. O ensaio documental não volta a ser aberto por esta dependência.
Treze migrations sem registo, sem execução automática
2026_10_07_160000_extend_internal_partnership_exchange: 14 estruturas/colunas examinadas ausentes; sem registo.2026_10_07_190000_create_internal_virtual_desk: 10 estruturas/colunas examinadas ausentes; sem registo.2026_10_08_120000_extend_desk_investor_guidance: 8 estruturas/colunas examinadas ausentes; sem registo.2026_10_09_020000_extend_opportunity_management: 6 estruturas/colunas examinadas ausentes; sem registo.2026_10_09_030000_extend_opportunity_resources: 4 estruturas/colunas examinadas ausentes; sem registo.2026_10_09_190000_prepare_investor_path: 2 estruturas/colunas examinadas ausentes; sem registo.2026_10_10_040000_create_portal_profile_authorization: 8 estruturas/colunas examinadas ausentes; sem registo.2026_10_10_050000_extend_organization_country: 2 estruturas/colunas examinadas ausentes; sem registo.2026_10_16_120000_extend_economic_reference_hierarchy: 1 estruturas/colunas examinadas ausentes; sem registo.2026_10_16_130000_add_investment_zone_editorial_draft: 1 estruturas/colunas examinadas ausentes; sem registo.2026_10_16_140000_add_investment_zone_operational_details: 1 estruturas/colunas examinadas ausentes; sem registo.2026_10_16_150000_create_investor_navigation_preferences: 1 estruturas/colunas examinadas ausentes; sem registo.2026_10_18_160000_add_portal_editorial_content: 1 estruturas/colunas examinadas ausentes; sem registo.
Todas as adições examinadas destas13 migrations estão fisicamente ausentes; não se encontrou entre elas o caso de estrutura examinada existente sem registo. A conferência por nomes não certifica equivalência de tipos, índices, constraints ou efeitos de dados. Só três pertencem ao conjunto mínimo do instalador Balcão/percurso; as outras dez devem ser justificadas por componente na composição integral, não executadas para resolver indiscriminadamente o vínculo.
Composição e operações da actualização consolidada
- Fixar esta base de hashes e reconciliar explicitamente R2, DOC01, harmonização territorial, Inhambane, suporte de originais e enquadramento das12 fichas. R2 tem26 fontes idênticas e uma alteração esperada em routes/web.php por DOC01; as sete fontes DOC01 coincidem. O pacote técnico Inhambane tem três fontes ausentes e13 divergentes: exige fusão em três versões, não cópia sobre o destino. Não usar recibos do activo como prova de instalação nesta homologação.
- Preparar uma composição única de fontes/build, manifesto de pré-condições, migrations por componente e flags por activar/manter desligadas. Conferir também dependências de país de organização, hierarquia económica, parques, navegação contextual e editorial se incluídas. Conservar a origem de cada restrição: decisão Tempo, regra anterior ou escolha técnica.
- Reutilizar provas aceites; ensaiar num clone somente schema, compatibilidade, consumidores e reversão afectados por esta composição. O fingerprint global do instalador é uma escolha técnica: reconciliar recibos ao delta e aos hashes sem convertê-lo numa obrigação de repetir todos os percursos.
- Concretizar a acção autenticada de instalação pelos mecanismos existentes. Há zero contas correspondentes à configuração de gestores e zero gestores verificados. A conta documental continua sem gestão global. Não atribuir papéis, marcar MFA ou ampliar acesso a privados para contornar a instalação. Uma decisão/acção específica da Tempo sobre o operador necessário continua distinta da concessão DOC01.
- Antes da troca decidida, backup fresco consistente de base, privados, configuração/chaves, UID/GID/modos/ACL e cópia protegida da apresentação; verificar recuperação portável. Não restaurar um dump antigo por cima dos dados novos.
- Aplicar apenas o manifesto exacto, com migrações nominadas e instalação autenticada — nunca
migrateglobal ou as13 automaticamente. Activação de flags, transporte privado de acervos/lotes e publicação são operações separadas. Não repetir importação já reconciliada, sobrescrever edições ou publicar oportunidades/documentos/serviços automaticamente. - Homologar somente os deltas e o vínculo positivo ao dossier quando houver dados autorizados. Reversão mantém dados posteriores e schema usado; preferir desactivar o gate/repor apresentação compatível. Não executar down destrutivo com dossiers/tarefas/documentos; preservar auditoria e reconciliação. Abertura pública permanece fora desta execução.
Estado da proposta: saldo e dependências confirmados, ensaio mínimo de schema concluído em QA. Não existe ainda pacote integral reconciliado/compilado nem ensaio da sua reversão com dados posteriores. Não é uma autorização implícita para migrations, atribuição de papéis, importação ou publicação no destino. A estimativa de60–120min da disponibilização R2 não cobre esta ampliação: estimativa integral depende do manifesto consolidado, conflitos por fonte e acção autenticada, ainda por delimitar. Não apresentar um prazo global como confirmado.
Provas e preservação
INVENTARIO-DESTINO.json, COMPARACAO-ENTREGAS.json, ACESSO-ADMINISTRATIVO-E-DOSSIERS.json, PROVA-DEPENDENCIAS-BALCAO-QA.json e SALDO-COMPONENTES.json nesta pasta. Provas documentais DOC01 permanecem na entrega anterior; nenhum novo teste documental foi executado. Leitura sem dados privados individuais, credenciais ou valores de segredos. Nenhuma escrita remota, alteração de ficheiros/flags, migration, importação, atribuição de papel ou publicação nesta reconciliação.
Proposta consolidada da aplicação completa para homologação
Revisão fdcb31f1b5b9 — SHA-256 completo fdcb31f1b5b98286f3193c3bbc7e9714a90b6abdf4e47b55f478e1f63de97159. Preparada em 19/10/2026, exclusivamente para teste-investidor.tempo.co.mz. Não instalada nesta execução. Substitui a proposta parcial anterior como proposta corrente; as entregas R2 e DOC01 já instaladas conservam o seu histórico e provas.
A candidata reúne a aplicação activa local 3ca67a53c1b35c2f52b8d03ce61edc65a4b6686c, o recorte HML01 compatível através da R2, DOC01 e as alterações legítimas do destino. Preserva Privacidade, Termos, apresentação Tempo, scanner Unix, conta simples, estados de pesquisa e gestão documental limitada. Não reconstrói o Balcão.
Revisão e diferenças resolvidas
O pacote contém 1080 ficheiros, incluindo fontes e build: 717 idênticos ao destino, 111 ausentes e 252 divergentes. Não há eliminações automáticas. O manifesto identifica por ficheiro hash anterior, hash candidato, tamanho e tratamento; uma pré-condição alterada obriga a reconciliar o delta antes da troca.
Arquivo INVESTMOZ-HOMOLOGACAO-INTEGRAL-fdcb31f1b5b9.zip (3,088,344 bytes); SHA-256 722ae587be28af16708236d56b47e19d9a32dc2b30853fc421d3c770f436b126. Não contém .env, vendor, node_modules, storage, sessões, chaves, cópia da base, contas ou dossiers QA. O artisan incluído é o original da aplicação, não o wrapper do ensaio. O build é de produção e foi gerado na árvore privada da candidata.
As fusões em três versões estão registadas em COMPOSICAO-FONTES-COMPLETAS.json. Foram resolvidos os conflitos de fim de linha e de composição da navegação/CSS, preservando a apresentação já instalada sem duplicar rodapés/contextos. Foi conservado o alias GET showMfa do destino, distinto do POST de confirmação, para evitar colisão no Wayfinder. O controlo MFA existente mantém-se.
Saldo por componente e resultado proposto
| Componente | Destino observado | Actualização consolidada / limite |
|---|---|---|
| Login, conta simples, manifestações e pesquisa R2 | Disponível no recorte aceite | Preservado; provas aceites reutilizadas. A revisão integral não certifica consumidores ainda não demonstrados. |
| Biblioteca privada DOC01 e scanner Unix | Disponível, próprio utilizador | Preservado; scan real e recuperação já aceites não repetidos. Sem acesso universal. |
| Balcão Virtual | Código parcial presente; desk_cases e dependências ausentes |
Dez tabelas de Balcão e extensões relacionadas ensaiadas. Preparação de dossier abre no navegador do clone. |
| Percurso de 19 etapas e contexto | Estrutura incompleta / configuração desabilitada | Schema, definição versionada e flag incluídos; gravação e recuperação após novo login demonstradas no clone. Não houve conversão de dossiers antigos. |
| Gestão canónica de oportunidades e recursos | Extensões/tabelas ausentes | Editor, recursos, versões e rascunhos incluídos. Seis oportunidades sintéticas do seeder excluídas dos dados. |
| Perfis, revisão e publicação | Quatro tabelas de autorização ausentes | Schema e ecrãs incluídos. Zero contas ou atribuições copiadas. Operador real/activação administrativa dependem da decisão Tempo pelos mecanismos existentes. |
| Sectores, referências económicas e negócios existentes | Código instalado com gates desligados; dados parciais | Configuração activa local reconciliada; 12 sectores existentes preservados, cinco actividades e uma versão de referência em falta ensaiadas. |
| Parques, mapas e território | Ficha operacional/contexto incompletos; acervo não transferido | Schema e consumidores incluídos. 16 fichas genuínas preparadas privadamente, sem publicar ou confirmar operação; sete têm fonte legal associada. |
| Biblioteca pública, editorial e documentos de apoio | Acervo público ausente | 29 originais importados privadamente no clone e repetição idempotente; zero publicação. Acervo de apoio inventariado separadamente; scan/decisão de divulgação continuam separados da instalação. |
| Simulador, fiscal, fundos, modelos, checklists, educação, parcerias e legado | Código/conteúdo em estados distintos, discriminados no saldo detalhado | Fontes locais completas incluídas, flags activas reconciliadas. Provas aceites reutilizadas; dados privados/transacções/resultados locais não copiados. Conteúdos sem correspondência comprovada continuam identificados como não demonstrados. |
| Orientação IA / SuiteCRM | Desabilitados no destino | Código incluído. SuiteCRM permanece desligado como local. IA só pode ser habilitada com credencial própria do destino confirmada; chamada externa não ensaiada. |
| Operação autorizada da equipa | Nenhuma conta existente corresponde à configuração de gestor | Não ampliar DOC01. A Tempo deve indicar operador/acção autenticada existente para instalação e gestão; bootstrap/perfis seguem os ecrãs existentes e não são fabricados. |
O saldo detalhado conserva os 43 componentes da matriz existente, com estado do destino e tratamento nesta revisão. “Código incluído” não equivale a dados transferidos, componente habilitado ou aceitação funcional integral no destino.
Dependências e schema individualmente reconciliados
Destino: PHP 8.4.17, Laravel 13.30.1, PostgreSQL 17/PostGIS 3.6.4. Local: PHP 8.5.11, mesmo Laravel, PostGIS 3.6.2. Os locks Composer/NPM são idênticos, sem pacotes novos ou divergentes; PHP requerido ^8.3, extensões necessárias presentes. Parser PHP 8.4: 443 fontes iniciais e cinco fontes alteradas depois, sem erros. Build e TypeScript concluíram sem erro.
Base restaurada: 144 tabelas / 75 migrations. A aplicação local tem 172 tabelas / 88 registos; utilizadores é uma tabela alheia, vazia e sem referências/migration na aplicação, excluída. Resultado do ensaio: 171 tabelas / 88 migrations, com as 144 tabelas originais preservadas na projecção das colunas anteriores. Duas vistas de sistema explicam contagens superiores em information_schema; não são tabelas adicionais da aplicação.
Foram verificadas tabelas, colunas, nulabilidade, índices e constraints; falta de registo não foi usada como prova de ausência estrutural. No clone, o schema final corresponde ao local, excluindo utilizadores; 66 diferenças de representação de CHECK de arrays literais foram normalizadas de forma limitada por serem equivalentes no PostgreSQL.
| Migration nominal | Tabelas tocadas | Tratamento |
|---|---|---|
2026_10_07_160000_extend_internal_partnership_exchange |
partnership_documents, partnership_events, partnership_interests, partnership_locations, partnership_messages, partnership_milestones, partnership_notifications, partnership_origins, partnership_rooms, portal_partnerships |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_07_190000_create_internal_virtual_desk |
desk_cases, desk_documents, desk_events, desk_institutional_links, desk_messages, desk_notifications, desk_payments, desk_requests, desk_revisions, desk_service_versions |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_08_120000_extend_desk_investor_guidance |
desk_cases, tasks |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_09_020000_extend_opportunity_management |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. | |
2026_10_09_030000_extend_opportunity_resources |
documents, opportunity_ |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_09_190000_prepare_investor_path |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. | |
2026_10_10_040000_create_portal_profile_authorization |
opportunities, portal_profile_requests, portal_role_assignments, portal_security_approvals, portal_superuser_pair, users |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_10_050000_extend_organization_country |
organizations |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_16_120000_extend_economic_reference_hierarchy |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. | |
2026_10_16_130000_add_investment_zone_editorial_draft |
investment_zones |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_16_140000_add_investment_zone_operational_details |
investment_zones |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_16_150000_create_investor_navigation_preferences |
investor_navigation_preferences |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
2026_10_18_160000_add_portal_editorial_content |
portal_resources |
Ensaiada individualmente no clone; aplicar pelo instalador nominal existente. |
Desvio numa migration já registada: 2026_10_06_200000_add_document_requirement_evidence_links. As suas estruturas principais já existem; apenas falta a alternativa evidence_linked no CHECK portal_resource_revisions_change_type_check. Ensaiou-se a substituição desse CHECK após conferir as quatro alternativas antigas. Não repetir a migration nem duplicar review_status; não criar registo falso no ledger.
As permissões/flags transitórias dos instaladores foram usadas apenas no clone isolado. Na homologação não se pode pôr APP_ENV=testing, usar --actor como autenticação, copiar recibos locais ou invocar as 13 migrations em bloco. Os instaladores nominais precisam de recibos frescos do destino e desta revisão, decisão identificada e sessão real autorizada/MFA para as operações que já o exigem.
Definições e conteúdos sem copiar transacções
O Balcão local tem um código de serviço, project-preparation, com cinco versões publicadas no histórico, não cinco serviços. A versão de origem actual é a 5; transportar definição e rastreabilidade de origem, sem inventar autor/revisor remoto. O clone utilizou a definição existente com actor exclusivamente QA. A publicação/versionamento da definição no destino é uma acção autenticada distinta da instalação estrutural. O percurso de 19 etapas é a definição interna versionada preparada pela sua migration; os percursos anteriores mantêm-se.
Foram comparados por leitura os dados activos antes da selecção. Excluídos: seis oportunidades de OpportunitySeeder, a ficha pessoal/teste INV-MOZ-0003, todos os utilizadores, credenciais, papéis, sessões, pedidos, dossiers, simulações, transacções e fixtures QA. Nenhum seeder será executado.
Conteúdo genuíno preparado: 29 documentos, 16 zonas/parques, seis fontes legais, 19 relações zona/localização, referências económicas em falta e 24 referências territoriais requeridas. Repetição no clone não duplica; não sobrescreve os 12 sectores nem os dados do destino. Divergências preservadas: datas published_at dos 12 sectores e versões de 23 referências geográficas; campos materiais de geografia coincidem. Duas novas fichas foram mapeadas à versão territorial do destino, mantendo a versão de origem no manifesto.
As 16 zonas ficam privadas/pendentes. Nove não têm FK de fonte legal e não são promovidas a oficiais por inferência. Origem, edição, hash e confirmações anteriores constam do manifesto privado; a aceitação das fontes oficiais pela Tempo mantém-se. O histórico de origem permanece na base local e é referenciado, não é reproduzido como novas aprovações assinadas por actores remotos. Documentos importados no clone ficam com scan pendente; não se copiou um resultado “clean” como se fosse um scan no destino. Metadados de proveniência/edição e direitos aceites têm de ser transportados com o mapeamento de hash, sem nova revalidação genérica ou publicação automática.
Acervo de apoio: 264 entradas inventariadas, 239 originais únicos verificados, 127,664,386 bytes preparados privadamente. 2 originais ausentes e 4 divergências de hash não foram copiados como exemplares confirmados. Os ficheiros disponíveis têm caminhos portáveis e hashes conferidos. Consulta, situação documental e utilização em regras continuam independentes; modelos e recomendações não viram requisitos. Recibos QA, logs, backups e autorizações locais não integram o transporte.
Os conteúdos têm artefacto cifrado separado e manifesto próprio; não estão no ZIP de código nem anexados publicamente. Importação privada, scan e disponibilização pública são operações distintas. Os incrementos apenas QA — harmonização territorial, lote Inhambane de 30 fichas, reutilização de originais e enquadramento de 12 programas/carteira — continuam separados, sem incorporação silenciosa.
Sequência exacta proposta para o destino
- Decisão da revisão/perímetro. Confirmar esta revisão, contas reais de homologação e operador autorizado para as acções nominais existentes. A conta
nala@tempo.co.mzmantém somente o acesso documental já concedido até outra decisão expressa. A reserva técnica propostaINVESTMOZ_HOMOLOGATION_ONLY=true/ lista de revisores limita o host de teste sem conceder papéis, acesso a privados ou abrir o portal ao público; autenticação, recuperação e MFA continuam pelos fluxos normais. Esta reserva foi ensaiada no clone e é uma escolha técnica proposta, não regra organizacional. - Pré-condições frescas. Conferir hashes do manifesto contra o destino, ledger/schema nominal, espaço e utilizador dos serviços. Parar se houver divergência material; não substituir alterações legítimas. Preservar APP_KEY/chaves anteriores, DB, SMTP, socket, allowlist DOC01 e todas as contas/MFA.
- Backup consistente e recuperação. Impedir novas escritas HTTP e pausar filas com trabalhos em curso concluídos; manter a janela durante dump e cópia dos privados/configuração ou demonstrar reconciliação. Cobrir base, ficheiros privados/públicos referenciados, definições/acervo,
.env, chaves, configuração Nginx/PHP-FPM/worker/scanner, proprietário UID/GID, modos e ACL Linux. Cifrar e verificar restauração isolada; chave com envelope portável protegido fora da dependência exclusiva do perfil Windows. Não enviar segredos ao relatório. A cópia por leitura usada neste ensaio tem snapshot consistente da base e ficheiros estáveis, mas não substitui este backup fresco da troca. - Código/build compatíveis e preflight. Colocar este ZIP num staging, conferir todos os hashes, reaproveitar vendor instalado (lock igual), sem instalar pacotes ou copiar
.env. Preservar storage e aplicar propriedade/permissões Linux necessárias. Não usar permissões 777. Manter aplicações indisponíveis a escritas durante schema/configuração. - Schema nominal. Na ordem da tabela, aplicar apenas as dependências confirmadas pelas acções existentes: bolsa de parcerias → Balcão/base e orientação → gestão/recursos de oportunidades → percurso → perfis → país → referências económicas → ficha de parque → detalhes → contexto → editorial. A acção Balcão pode agrupar as suas três migrations declaradas, depois de as dependências serem conferidas. Verificar cada resultado antes de continuar. Reparar separadamente o CHECK já registado, com pré-condição exacta. Sem
migrateglobal oudb:seed. As prévias autenticadas só ficam prontas após os recibos frescos e operador real; não fabricar aprovação. - Definições, configurações e serviços. Instalar/versionar o serviço existente pela gestão; preservar histórico e mapear autor de transcrição real. Habilitar as flags locais aprovadas após as dependências, excepto integrações sem credencial. Preservar scanner
clamdpor socket Unix/var/run/clamav/clamd.ctl, SMTP/STARTTLS, worker da fila e armazenamento privado; reiniciar/recarregar apenas o processo de aplicação/worker que a troca efectivamente exigir. Conferir caches com configuração do destino. Não copiar cache compilada local. - Dados/documentos privados. Repetir a prévia reconciliada no destino pelos mecanismos existentes com actor autorizado; deduplicar por SHA, não por nome/email; preservar conflitos explicitamente. O importador CLI de lotes tem guardas QA/piloto: não contorná-las com actor fictício. A importação corrente pode usar a gestão autenticada; eventual adaptação nominal para transportar o lote num único passo deve ser identificada antes de executar, sem alterar regras de acesso. Recuperar proveniência do manifesto e submeter bytes ao scanner real. Nenhum documento, parque ou oportunidade é publicado por esta sequência técnica.
- Conferência e abertura só à homologação. Reabrir apenas o host de testes reservado, retomar worker e conferir login/MFA, menus, Balcão, criação/recuperação de dossier, conta simples/acompanhamento e documentos. Reutilizar provas aceites e conferir apenas os deltas. O vínculo documental positivo a dossier real autorizado no destino continua pendente; não criar dados fictícios no servidor. Publicação e abertura pública permanecem decisões separadas.
Ensaio e reversão
Restaurou-se a aplicação/base actual do servidor num clone hml_full_server_20261019_test, porta 55441, com guarda antes de arrancar providers; email em log, integrações externas desligadas. Foram ensaiadas as 13 migrations individualmente, o CHECK, preservação das 144 tabelas originais, paridade de schema, build, parser PHP 8.4, TypeScript, reserva de homologação, importação privada/idempotência e reconciliação de referências. No navegador: login → Balcão → preparação de dossier; percurso → gravação de contexto → terminar sessão → novo login → recuperar o mesmo dossier/contexto. Nenhum percurso aceite de 19 etapas foi repetido.
Reversão suportada: repor a apresentação/build anterior e desabilitar as flags dos componentes afectados, conservando as fontes completas compatíveis e o schema aditivo. O ensaio substituiu efectivamente o build pelo do destino e voltou à candidata; os fingerprints de 167 tabelas de negócio ficaram iguais, incluindo dossier/contexto novos e DOC01. Não executou down nem restaurou dump sobre dados posteriores. Isto demonstra a troca dos ficheiros e preservação de dados; não foi repetida uma homologação visual completa do build antigo.
Após reversão permanecem as 27 fontes R1/R2 compatíveis, DOC01, as fontes completas conservadas para compatibilidade, configuração Unix, estruturas e dados novos, históricos, documentos e contas. A reversão é de apresentação/activação, não promessa de remover toda a actualização. Se a Tempo exigir retirada integral de fontes ou schema, é outro procedimento com reconciliação/exportação dos dados posteriores; não está implícito nesta proposta.
Limites e decisões necessárias
| Tipo | Ponto concreto | Acção |
|---|---|---|
| Decisão Tempo | Revisão consolidada e contas de homologação/instalação | Confirmar revisão/perímetro e operador pelos mecanismos existentes, sem ampliar DOC01 silenciosamente. |
| Operação de disponibilização | Backup fresco e recibos por hash/revisão/destino | Executar na janela aprovada; não copiar os recibos locais. |
| Dependência técnica de transporte | Importador de lote actual é QA/piloto | Usar a interface existente para importação privada ou reconciliar expressamente a adaptação nominal antes da execução; não apresentar transporte em lote como já homologado remotamente. |
| Informação documental | Dois originais ausentes/quatro hashes divergentes | Reconciliar exemplares; os restantes conteúdos e o código avançam independentemente. |
| Homologação | Vínculo documental positivo ao dossier real | Usar dossier autorizado após instalação, sem dados fictícios. |
| Credencial externa | IA | Confirmar credencial do destino; restante aplicação avança com IA desabilitada. |
| Conteúdos/publicação | Acervo privado, parques e autorias/versionamento | Usar gestão habitual e divulgação expressa; zero publicação técnica automática. |
| Incrementos QA | Territórios/Inhambane/programas | Permanecem separados até reconciliação expressa. |
Estimativa operacional 2–4 horas, depois da decisão e acesso disponíveis: 20–45 min para backup/restauro/provas frescas; 10–20 min para staging/preflight; 45–90 min para acções nominais e configuração; 20–40 min para conferência do delta; 20–45 min para transporte/scan privado inicial. A duração resulta de 13 operações nominais, ZIP de 3,1 MB, acervo de apoio de 127,7 MB e dependências já ensaiadas. É uma estimativa, não medição da janela remota; não inclui espera por operador, exemplares em falta, decisões de divulgação nem adaptação adicional de lote. Se essa adaptação for escolhida, estimar o seu delta antes da decisão de execução. A janela efectiva de impedimento de escritas será definida com o operador; não abrir publicamente no fim.
Provas e manual de operação
Manifesto integral, plano nominal, saldo por componente e provas estão reunidos no anexo técnico. A mesma matriz de requisitos e o manual foram actualizados; as provas QA não mudam o estado instalado do destino. Não houve nesta execução escrita no servidor, migration remota, alteração de conta/permissões, importação ou publicação.
Para manutenção corrente: editar serviços, fichas, referências, documentos e contexto nos ecrãs existentes; preservar versão/fonte; distinguir preparação, validação e publicação. A gestão documental limitada permite apenas os próprios ficheiros e não dá gestão de catálogo. Usar “não aplicável” apenas quando as regras existentes o prevêem; lacunas documentais continuam visíveis e não são preenchidas com valores fictícios.
| Componente | Estado no destino observado | Tratamento na revisão fdcb31f1b5b9 |
|---|---|---|
| Documentos públicos | Ausente | 29 originais reconciliados/importados privadamente no clone; zero publicação, scan de destino e divulgação expressa separados. |
| Ficha integral dos parques | Ausente | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Navegação contextual e manifestação de interesse | Ausente | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Referências económicas — lote mínimo | Ausente | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Sectores e duplicação visual | Instalado mas desabilitado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Duplicados distintos — deteção e consolidação | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Fintech — enquadramento específico | Instalado mas desabilitado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Legado — conteúdo restante | Instalado mas desabilitado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Piloto agronegócio | Ausente | Código incluído; seis oportunidades de seeder excluídas. Dados genuínos/piloto não demonstrados no destino. |
| Percurso do investidor — 19 etapas | Ausente | Incluído; contexto gravado e recuperado após nova sessão no clone, sem repetir 19 etapas. |
| Fiscal/contributivo e exportações | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Negócios existentes e classificação | Instalado mas desabilitado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Negócios similares | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Importação de empresas/empreendimentos | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Fundos | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Comparador societário e modelos | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Capitalização/private equity e Bolsa | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Checklists versionadas | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Indicadores de utilização | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Jornadas educativas | Instalado mas desabilitado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Partilha documental individual e variantes de sala | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Restauro, modalidades e SLA | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Cartografia e consumidores territoriais restantes | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Acessibilidade e restantes consumidores | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Fechos de operação/avaliação documental | Não demonstrado | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Conta simples, login e MFA privilegiado | Disponível | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Manifestação simples, recibo e acompanhamento do interessado — R2 | Disponível | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Pesquisa — estados do recorte R2 | Disponível | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Biblioteca privada própria, scanner e recuperação — DOC01 | Disponível | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Backup/restauro e reversão do recorte R2 + DOC01 | Disponível | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Balcão Virtual | Ausente | Incluído e ensaiado no clone: schema, definição existente, preparação; activação no destino pendente. |
| Vínculo positivo e recuperação do dossier | Não demonstrado | Recuperação no clone demonstrada; vínculo documental positivo com dossier real no destino continua aberto. |
| Cadastro canónico e recursos de oportunidade | Ausente | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Perfis, revisão independente e publicação | Ausente | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Bolsa de parcerias e salas internas | Ausente | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
| Onde se localiza / associações territoriais e produtivas | Ausente | Incremento apenas QA, separado: não incluído nesta revisão. |
| Lote privado Inhambane —30 fichas | Ausente | Incremento apenas QA, separado: não incluído nesta revisão. |
| Enquadramento das12 fichas de programas/carteira | Ausente | Incremento apenas QA, separado: não incluído nesta revisão. |
| Originais partilhados e referência documental no dossier — Inhambane | Ausente | Incremento apenas QA, separado: não incluído nesta revisão. |
| Orientação assistida/IA | Instalado mas desabilitado | Código incluído. Credencial do destino e chamada externa não demonstradas; manter desligada até confirmação. |
| Integração externa SuiteCRM | Instalado mas desabilitado | Código incluído, permanece desligado como na aplicação local. |
| Operação administrativa e resposta da equipa na homologação | Não demonstrado | Schema/código incluídos; decisão sobre operador autorizado e bootstrap existente necessários; sem atribuições automáticas. |
| Gestão editorial da biblioteca | Ausente | Código integral incluído; provas funcionais anteriores reutilizadas; demonstração específica no destino pendente. |
Disponibilização integral do InvesteMoz em homologação
Executada a revisão fdcb31f1b5b9 em https://teste-investidor.tempo.co.mz, por autorização expressa da Tempo. O código/build completos coincidem com os 1 080 ficheiros autorizados, sem diferenças. O activo não foi alterado. Não houve publicação adicional de documentos, parques ou oportunidades nem incorporação dos incrementos apenas QA.
Resultado técnico e acessos
171 tabelas e 88 migrations. As 13 operações foram aplicadas nominalmente, com hashes conferidos e auditoria do executor de manutenção SSH, mais a reparação isolada do CHECK evidence_linked. Não se executou migrate global nem seeders. A conta documental não tinha autorização de instalação; não foi promovida nem usada para fingir autenticação administrativa. A manutenção usou o SSH autenticado e a identidade PostgreSQL de manutenção, sem mudar políticas RLS ou criar papéis. A custódia dos recursos foi associada a nala@tempo.co.mz por confirmação expressa da Tempo, distinta da autoria/validação da fonte e da identidade do executor.
O destino conserva APP_KEY/chaves anteriores, credenciais DB/SMTP, configuração Unix, verificação de email, MFA e permissões das contas. A homologação web está reservada à conta real indicada; login, recuperação, verificação e MFA mantêm os fluxos normais. A conta de custódia mantém gestão global=false. O worker está activo, sem jobs pendentes ou falhados na conferência. IA e SuiteCRM permanecem desligados. A abertura pública continua separada.
Foram abertos no navegador real: início/lista de investimentos, painel e serviço do Balcão, simulador, sectores, zonas, documentos, oportunidades, negócios, parcerias e educação. Não foram criados dossiers, manifestações ou oportunidades fictícias. As provas funcionais aceites não foram repetidas; esta conferência incidiu na instalação, acessos e conteúdos afectados.
Conteúdos e integridade
285 ficheiros de transporte considerados, 285 escritos privadamente, zero conflitos. Registados 29 documentos/recursos privados, 16 zonas/parques privados, seis fontes legais, 19 relações territoriais, cinco actividades económicas e uma versão de catálogo em falta. Reutilizados os 12 sectores e 24 referências territoriais já existentes. Preservadas as divergências de datas de publicação de sectores e versões territoriais; não houve sobrescritas silenciosas. O acervo de apoio contém 239 originais únicos verificados, separado das 29 fichas da biblioteca; não se apresenta como 239 publicações.
A definição interna já publicada na origem project-preparation, versão 5, foi transportada com custódia e proveniência; não é uma nova publicação de conteúdo público. Não se inventaram autor/revisor de origem nem data de publicação. O histórico anterior conserva-se na origem e nas referências de proveniência, sem fabricar aprovações no destino.
Os 29 documentos novos foram processados pelo job antimalware normal; a biblioteca privada mostra 30 ficheiros limpos, incluindo DOC01 preservado. Um novo original foi recuperado na sessão real com MFA: Lei-22-2022-IVA-republicada-BR-250-2-suplemento.pdf, SHA-256 ea1b0dc6f5cf6e595f6d9a19e7042f398999e0087caef1785f6e8fac571b5f53, igual à fonte.
O conjunto de transporte teve 268 originais únicos verificados através do scanner Unix. Um PDF de 21 361 335 bytes excedia o orçamento genérico de 20 MiB da aplicação; foi analisado individualmente com orçamento exacto só nesse processo, dentro do limite de stream existente de 25 MiB. Resultado final: 268 limpos. Não se alteraram limites globais, de upload ou do daemon. O resultado inconclusivo inicial e a nova tentativa ficaram no histórico. Dois originais ausentes e quatro divergências de hash da origem permanecem identificados; não foram copiados como exemplares confirmados.
Classificação pública/privada e direitos da fonte foram preservados como metadados; os recursos do portal continuam não publicados. Fonte oficial aceite não foi sujeita a nova revalidação genérica. Transporte e scan não activaram cálculos fiscais. Não foram copiados contas, segredos, permissões, dossiers, resultados, transacções ou dados sintéticos locais/QA, incluindo as seis oportunidades de seeder e a ficha pessoal/teste excluída.
Backup e reversão
Backup fresco com HTTP em manutenção, worker parado, locks SHARE sobre todas as tabelas e comparação de ficheiros antes/depois. Restauração isolada das 144 tabelas conferida por conteúdo, mais 34 ficheiros/configuração com proprietário, modo, ACL e hashes Linux. Base, privados, código/build anterior, configuração/chaves da aplicação e configuração dos serviços estão cifrados. Envelope de recuperação portável e cópia protegida fora do perfil Windows foram conservados. Acrescentou-se por leitura o inventário de propriedade/ACL/RLS/papéis PostgreSQL e a configuração PG necessária à recuperação, sem hashes de palavras-passe de papéis nos relatórios.
Reversão preparada em REVERSAO-APRESENTACAO-INTEGRAL.json e reverse-authorized-full-presentation-remote.py: repõe o manifesto/build anterior e desliga os gates afectados, mantendo a reserva de homologação, fontes compatíveis, schema aditivo, dados posteriores, documentos, histórico, Unix e contas/MFA. Não executa down nem restaura um dump antigo sobre dados posteriores. O ensaio de reversão no clone foi reutilizado; não se interrompeu a instalação final para repetir a reversão no destino. Restauro integral exige reconciliar os dados posteriores e restaurar também propriedade/ACL/RLS do apêndice protegido.
Divergências resolvidas durante a execução e limites técnicos
components.jsonestava omitido do inventário anterior, mas já era idêntico à candidata. Sem mudar revisão ou sobrescrever alterações: contagem efectiva 718 ficheiros iguais, 110 ausentes e 252 divergentes; 1 080 hashes finais iguais ao manifesto.- A primeira passagem aplicou cinco migrations e parou na inserção da definição do percurso por RLS. O código/configuração anteriores foram repostos e o serviço reaberto, preservando as estruturas aditivas. A retoma conferiu as cinco operações auditadas e não as repetiu; concluiu as restantes com a identidade PostgreSQL de manutenção, sem desactivar RLS.
- Cinco objectos novos criados pela manutenção estavam com proprietário PostgreSQL diferente do utilizado pela aplicação. Foram alinhados apenas esses objectos com o papel DB existente. O arranque e o login foram depois conferidos no navegador; não se criaram papéis DB nem se concederam funções de negócio a contas.
- Quatro interfaces de instalação nominal mantêm na fonte aprovada a restrição ao nome da base local
investemoz. Não foram usadas como autenticação fictícia, nem alteradas fora da revisão. O schema está instalado; a reinstalação por essas interfaces na homologação não está certificada. Isto não equivale a dar gestão corrente à conta de custódia. - A sondagem HTTP de CLI a partir do servidor devolveu 403, inclusive no login; não foi tomada como prova de funcionamento do navegador ou de inexistência de páginas. A entrada com MFA, os ecrãs e a recuperação documental foram conferidos no Edge real. A reserva web está habilitada e as rotas/controlos existentes foram preservados.
Saldo dos 43 componentes
Saldo histórico de 19/10/2026 — não representa o estado actual. Conservado para rastreabilidade. A coluna final reconcilia as entregas posteriores e a leitura de 23/10, sem retirar aceitações por falta de nova prova. Disponibilidade, conclusão integral e ausência de dados são estados distintos.
| Nº | Componente | Estado histórico | Acesso e limitação históricos | Saldo de preservação em 23/10/2026 |
|---|---|---|---|---|
| 1 | Documentos públicos | Instalado mas desabilitado | Abrir · 29 fichas privadas; zero publicação adicional. Consulta pública do acervo permanece fechada. | Disponível: 29 recursos públicos; recibo editorial 22/10. Os 20 artigos conservam a aceitação anterior. |
| 2 | Ficha integral dos parques | Instalado mas desabilitado | Abrir · 16 fichas privadas/pendentes, 19 relações territoriais; publicação e gestão autorizada separadas. | Disponibilizado localmente em 18/10; destino conserva 16 fichas, 8 publicadas. Recorte integral não é reaprovado por este inventário. |
| 3 | Navegação contextual e manifestação de interesse | Disponível | Abrir · Início, contexto e navegação abrem; gravação/recuperação aceites em QA reutilizadas. Sem dossier real no destino. | Navegação/percurso preservados; carteira reposta em 23/10: 29 dossiers, incluindo 15 projectos âncora. |
| 4 | Referências económicas — lote mínimo | Instalado mas desabilitado | Abrir · 11 actividades presentes; cinco novas referências transportadas. Activação/publicação do lote não executada. | Código e referências presentes; manter o âmbito da autorização anterior, sem inferir publicação de todas as opções. |
| 5 | Sectores e duplicação visual | Disponível | Abrir · Ecrã aberto: dez sectores principais, especialização Fintech sem cartão principal duplicado; 12 registos conservados. | Entrega de 18/10 conservada no código/histórico; sem remoção constatada nesta leitura. |
| 6 | Duplicados distintos — deteção e consolidação | Não demonstrado | Abrir · Código presente; consolidação de registos distintos não demonstrada no destino. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 7 | Fintech — enquadramento específico | Instalado mas desabilitado | Abrir · Código instalado; artigo de origem permanece privado, sem publicação adicional. | Fintech público no lote aceite; especialização preservada. Não reabrir a organização sectorial aprovada. |
| 8 | Legado — conteúdo restante | Instalado mas desabilitado | Abrir · Adaptador habilitado; artigos/imagens transportados privadamente, sem os publicar. | 20 artigos públicos e 28 privados cadastrados no destino; dois originais incompletos. Recibo 37a8eb01. |
| 9 | Piloto agronegócio | Instalado mas desabilitado | Abrir · Originais privados; seis oportunidades sintéticas excluídas. Nenhuma oportunidade real publicada. | Piloto Agronegócio concluído: artigo e imagem preservados; não é uma oportunidade empresarial concreta. |
| 10 | Percurso do investidor — 19 etapas | Disponível | Abrir · Início e lista própria abrem; definição de 19 etapas instalada. Não repetidas as 19 etapas aceites. | Percurso e preparação privada habilitados no destino; entrega adaptativa de 22/10. Zero dossiers pessoais não é perda de função. |
| 11 | Fiscal/contributivo e exportações | Não demonstrado | Abrir · Formulário aberto; cenários fiscais/contributivos/exportação e parâmetros efectivos não certificados nesta execução. | Tesouraria/exportações e consumidor IVA têm entregas delimitadas em 21–22/10; restantes variantes não promovidas a concluídas. |
| 12 | Negócios existentes e classificação | Disponível | Abrir · Catálogo abre e módulo habilitado; zero negócios copiados. Gestão própria sujeita às permissões existentes. | Módulo habilitado e fluxos conservados. Ausência de anúncios não demonstra desaparecimento de código. |
| 13 | Negócios similares | Não demonstrado | Abrir · Código instalado; comparação com negócios reais não demonstrada. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 14 | Importação de empresas/empreendimentos | Não demonstrado | Abrir · Mecanismo presente; nenhuma empresa/transacção local ou QA transferida. Operador de gestão por definir. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 15 | Fundos | Não demonstrado | Abrir · Fontes instaladas; critérios específicos de fundos não demonstrados no destino. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 16 | Comparador societário e modelos | Não demonstrado | Abrir · Fontes instaladas; comparação societária/modelos não demonstrados nesta execução. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 17 | Capitalização/private equity e Bolsa | Não demonstrado | Abrir · Fontes instaladas; cenários específicos de capitalização/Bolsa não demonstrados no destino. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 18 | Checklists versionadas | Não demonstrado | Abrir · Definições presentes; checklist aplicada a dossier legítimo continua por demonstrar. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 19 | Indicadores de utilização | Não demonstrado | Abrir · Código presente; indicadores com dados reais e permissões adequadas não demonstrados. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 20 | Jornadas educativas | Disponível | Abrir · Área abre e flag habilitada; nenhum percurso educativo completo foi repetido. | Jornadas habilitadas; cartões educativos disponibilizados. Mantido o âmbito parcial da educação. |
| 21 | Partilha documental individual e variantes de sala | Não demonstrado | Abrir · Estruturas de salas/partilha instaladas; participantes, consentimentos e partilha real não demonstrados. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 22 | Restauro, modalidades e SLA | Não demonstrado | Abrir · Backup/restauro coberto separadamente; modalidades/SLA não homologados. Escalonamento continua desligado como local. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 23 | Cartografia e consumidores territoriais restantes | Não demonstrado | Abrir · Catálogos/mapas abrem. 1 921 referências geográficas no alvo versus 1 990 locais; diferença não reconciliada por item fora do manifesto. | Demarcação reposta: 408 geometrias. Polígonos de localidades e correspondências já pendentes não são nova regressão. |
| 24 | Acessibilidade e restantes consumidores | Não demonstrado | Abrir · Mensagens R2 preservadas; não se declara certificação integral de acessibilidade de todos os módulos. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 25 | Fechos de operação/avaliação documental | Não demonstrado | Abrir · Sem processo operacional legítimo para demonstrar fecho/avaliação documental. | Sem desaparecimento demonstrado; conserva o âmbito parcial/não demonstrado anterior, sem promover conclusão nem reabrir provas aceites. |
| 26 | Conta simples, login e MFA privilegiado | Disponível | Abrir · Login e desafio MFA reais concluídos; conta simples R2 e controlos privilegiados preservados. | Login/MFA e designações reais documentados; sem alteração de papéis nesta passagem. |
| 27 | Manifestação simples, recibo e acompanhamento do interessado — R2 | Disponível | Abrir · Recorte R2 conservado, com provas aceites reutilizadas; nenhuma manifestação fictícia criada. | R2 e percursos posteriores conservados; reutilizar as provas aceites. |
| 28 | Pesquisa — estados do recorte R2 | Disponível | Abrir · Catálogos abrem; quatro estados e protecção contra respostas antigas preservados do R2, sem repetir ensaios aceites. | Pesquisa e selectores corrigidos em 22/10; a carteira vazia é tratada como perda separada. |
| 29 | Biblioteca privada própria, scanner e recuperação — DOC01 | Disponível | Abrir · Conta de custódia vê 30 ficheiros limpos. Novo original recuperado no navegador com SHA-256 igual à fonte; sem gestão global. | Biblioteca, scan e recuperação disponíveis: 59 recursos, 29 públicos e 30 privados. |
| 30 | Backup/restauro e reversão do recorte R2 + DOC01 | Disponível | Backup fresco consistente: 144 tabelas restauradas iguais, 34 ficheiros/configuração conferidos, recuperação portável e metadados Linux/PG protegidos. Reversão de apresentação preparada. | Backup/restauro 22/10 documentado: 174 tabelas. Reposição activa terá backup próprio antes da escrita. |
| 31 | Balcão Virtual | Disponível | Abrir · Painel e serviço existente abrem; dez tabelas base instaladas, definição interna project-preparation v5 transportada. | Balcão e definições instalados; zero casos reais no destino não é perda de funcionalidade. |
| 32 | Vínculo positivo e recuperação do dossier | Não demonstrado | Abrir · Vínculo documental positivo pendente: zero dossiers da conta no destino. Não foram criados dados fictícios. | Recuperação de contexto demonstrada em QA nas entregas posteriores; ausência de caso real não reabre a prova aceite. |
| 33 | Cadastro canónico e recursos de oportunidade | Instalado mas desabilitado | Abrir · Editor/schema instalados; zero oportunidades. Gestão/revisão exigem atribuições existentes ainda não configuradas. | Cadastro e recursos disponibilizados; 30 oportunidades com resumos em preparação publicados. |
| 34 | Perfis, revisão independente e publicação | Instalado mas desabilitado | Abrir · Schema e fluxos presentes; zero atribuições/titulares. Nenhum papel ou privilégio concedido automaticamente. | Perfis e atribuições existentes preservados; inventário não cria decisão organizacional nova. |
| 35 | Bolsa de parcerias e salas internas | Disponível | Abrir · Catálogo e mapa abrem, nove tabelas de relações/salas instaladas; colaboração com participantes reais não demonstrada. | Bolsa e percursos existentes preservados; variantes com participantes reais mantêm saldo próprio. |
| 36 | Onde se localiza / associações territoriais e produtivas | Ausente | Harmonização territorial apenas QA, expressamente excluída da revisão autorizada. | Estado Ausente superado: integração territorial entregue em 20–22/10; catálogos e 408 limites conservados. |
| 37 | Lote privado Inhambane —30 fichas | Ausente | 30 fichas Inhambane apenas QA, não importadas nem publicadas no destino. | Estado Ausente superado: 30 fichas Inhambane transportadas e resumos divulgados em 22/10. |
| 38 | Enquadramento das12 fichas de programas/carteira | Ausente | Enquadramento das 12 fichas permanece no incremento QA separado. | Estado Ausente superado: enquadramento de 11 programas e uma carteira incluído na entrega posterior. |
| 39 | Originais partilhados e referência documental no dossier — Inhambane | Ausente | Reutilização documental Inhambane/dossier permanece no incremento QA separado. | Estado Ausente superado: originais privados/referências e contexto incluídos na entrega posterior; não reimportar. |
| 40 | Orientação assistida/IA | Instalado mas desabilitado | Abrir · Código presente; integração desligada. Credencial própria do destino/chamada externa não confirmadas. | Sem regressão demonstrada: integração externa não fechada; não inventar credencial nem activar fornecedor. |
| 41 | Integração externa SuiteCRM | Instalado mas desabilitado | Permanece desligada como na versão local; nenhuma credencial ou envio externo copiado/executado. | Desabilitada também no local por opção anterior; não desapareceu por efeito da entrega editorial. |
| 42 | Operação administrativa e resposta da equipa na homologação | Instalado mas desabilitado | Abrir · Nenhuma conta com gestão global/atribuições operacionais. Custódia documental não autoriza resposta/revisão da equipa. | Estado antigo superado: conta real e gestão autorizada demonstradas nas entregas posteriores. Sem novos papéis. |
| 43 | Gestão editorial da biblioteca | Instalado mas desabilitado | Abrir · Schema editorial instalado; publicação/edição pública não concedida à conta de custódia. | Gestão autónoma entregue; edição, prévia, gravação e recuperação dos 28 privados demonstradas no destino. |
Operação corrente e pendências
Entrar em https://teste-investidor.tempo.co.mz/login com a conta real e MFA que já tem configurado. Usar o menu Suporte para o acompanhamento e os serviços do Balcão; Realização para iniciar um investimento; /management/portal-services para os próprios ficheiros. A regra existente de gestão documental requer MFA recente (15 minutos); renovar pelo login normal, sem desactivar MFA.
Não existe dossier legítimo registado para a conta no destino. O vínculo documental positivo permanece pendente e não bloqueou os restantes componentes. Quando houver dossier autorizado, abrir/recuperar esse dossier e associar o documento pelo fluxo existente, preservando hash, fonte, versão e permissões; não usar um dossier de outra conta nem criar um fictício para encerrar a prova.
Gestão, resposta da equipa, revisão e publicação continuam dependentes de atribuições da Tempo pelos mecanismos existentes: há zero atribuições e zero titulares da administração no destino. A custódia não substitui essas permissões. Documentos, parques e artigos privados só entram na apresentação pública mediante decisão/acção própria; esta instalação não os publicou. Sem novas exigências organizacionais. Fonte da restrição de publicação/QA: decisão expressa da Tempo nesta conversa; MFA/permissões: fluxos existentes; propriedade dos objectos DB e orçamento individual de scan: escolhas técnicas de execução documentadas.
A mesma matriz, manual e backlog foram actualizados, sem encerrar globalmente requisitos apenas por instalação. Os incrementos de territórios, Inhambane, reutilização de originais e programas/carteira permanecem em QA até reconciliação expressa.
Fecho efectivo: 19/10/2026, 17:21:29 UTC (19:21 CAT). Recibo final confirma 1 080 fontes, 171 tabelas, 88 migrations, 268 originais limpos e 187 assets anteriores conservados para revers?o. Estado: conclu?do com limites expressos; v?nculo documental positivo a dossier leg?timo pendente.
Utilização efectiva da homologação — reconciliação19/10/2026
[UTILIZACAO-HOMOLOGACAO-20261019] Instalação não equivale a funcionamento integral. Contas/designações reconciliadas: só Nala existe no destino; onala/Aurora/Palmira/Mario vão iniciar registo normal, sem nova decisão de funções. Grants e dupla ainda não executados. Custódia não concede gestão editorial; gate global manage-portal exige reconciliação com o âmbito aprovado, sem acesso universal. Prévia nominal29 recursos já publicados localmente, sem escrita: artigo e imagem Agronegócio independentes das oportunidades sintéticas. Reconciliar external_id técnico versus identidade do leitor antes da disponibilização reservada; sem nova importação/scan. Desenvolvimento restante e provas pendentes separados por43 componentes. Incrementos território/Inhambane separados com comparação de hashes9/16/5 fontes. Relatório: outputs/investmoz-disponibilizacao-integral-20261019/UTILIZACAO-EFECTIVA-HOMOLOGACAO.md. Nenhuma publicação, alteração de produto/dados remotos ou critérios aceites nesta reconciliação.
Complemento por leitura dos metadados completos: oito zonas estavam publicadas localmente e ficaram draft/pending no destino; prévia nominal incluída, outras oito mantidas privadas. As11 actividades económicas já estão published no destino, corrigindo o saldo anterior sem executar nova activação ou cálculo. Artigos exigem também reconciliação do external_id técnico.
19/10/2026 19:39CAT: corrigida lista nominal de acesso ? homologa??o para Nala/onala/Aurora/Palmira/Mario j? designados. S? INVESTMOZ_HOMOLOGATION_REVIEWERS alterada; reserva true, c?pia protegida anterior/auditoria. Sem grants, MFA ou publica??o; registos e verifica??es reais mantidos. Recibo em outputs/investmoz-disponibilizacao-integral-20261019/RECIBO-ACESSO-CONTAS-DESIGNADAS.json.
Inicialização nominal — 19/10/2026
Nala15/onala16 confirmados com MFA configurado. Delta 36beefc41265 instalado na homologação: duas fontes e duas chaves nominais, sem manage-portal, build ou migrations. Doze provas focadas QA passaram com rollback; ecrã real conferido. Cerimónia real pendente de MFA recente e confirmação própria dos titulares, sem atribuições fabricadas. Origem: designações Tempo11/10 e instrução actual de reconciliar acessos. Relatório/recibo: outputs/investmoz-disponibilizacao-integral-20261019/bootstrap-nominal/.
Preparação operacional —19/10/2026
Recuperadas decisões/grants locais por leitura: Nala/onala administração e acervo; Nala Promotor interno/Validador; Aurora Promotor, Palmira Validador, Mario Publicador. Sem copiar IDs nem duplicar grants. Funcionários ainda ausentes no destino; cerimónia real/MFA recente pendentes, nenhuma atribuição fabricada. Identidades corrigidas apenas QA por20 aliases explícitos, dez verificações focadas com rollback, originais/IDs/versões/relações preservados. Prévia29 recursos/8 zonas e diferenças preparada; nenhuma alteração de publicação no destino. Acesso editorial delimitado ainda pendente, sem manage-portal global. Relatório: outputs/investmoz-disponibilizacao-integral-20261019/operacao-QA/PREPARACAO-OPERACIONAL.md. Inhambane/território excluídos; provas aceites preservadas.
Confirmacao operacional de 19/10/2026: pedido f5a91408-2990-4cd4-8614-15a3b6a7a422 consumido pela sessao autenticada de onala; dupla destino 15/16 confirmada por leitura. manage-portal permanece falso para ambas as contas; atribuicoes operacionais ainda vazias. Portal exige nova sessao. Prova: outputs/investmoz-disponibilizacao-integral-20261019/operacao-QA/PROVA-DUPLA-CONFIRMADA-DESTINO.json. Sem publicacao ou migracoes nesta operacao.
Saldo operacional actualizado — 19/10/2026
Dupla 15/16 inicializada por confirmação cruzada real; Tempo registada na interface; Nala Promotor/Validador aplicados por onala e conferidos, validade Validador 12/01/2028 11:04 UTC. Atribuição inicialmente sem prazo revogada e substituída, auditoria preservada. Aurora/Palmira/Mario ainda sem contas. Editor delimitado e identidades de artigos concluídos apenas QA (18+10 verificações); build/types aprovados, zero migrations. Prévia 29 recursos/8 zonas inclui 19 relações documentais ausentes no destino (1 confirmada/18 pendentes). Sem publicação nem inclusão Inhambane/território. Provas e procedimento em outputs/investmoz-disponibilizacao-integral-20261019/operacao-QA/PREPARACAO-OPERACIONAL.md.
Âmbito expresso para decisão da Tempo
A revisão 1d7f27e18deb propõe instalar o ajuste da gestão editorial e as correspondências dos artigos, e disponibilizar os 29 recursos, oito zonas e 19 relações documentais da prévia exclusivamente na homologação reservada. Inclui verificar apenas os acessos e conteúdos afectados, reutilizando as provas aceites, e reversão selectiva que preserve alterações, conteúdos e relações posteriores. Zero migrations. Não inclui abertura pública, Inhambane ou harmonização territorial.
A gestão de perfis já está disponível. A expressão «editor ainda apenas em QA» refere-se exclusivamente ao ajuste de gestão editorial do acervo e dos artigos. Nala acumula Promotor e Validador nos âmbitos aprovados, mas não pode aprovar o próprio trabalho: conserva-se a revisão independente.
Os registos de Aurora, Palmira e Mario não são pré-condição desta disponibilização. As respectivas atribuições aprovadas serão concluídas quando as contas e verificações aplicáveis estiverem disponíveis. Esta clarificação delimita a proposta para decisão; não constitui autorização de execução nem nova revisão de código.
Disponibilização editorial 1d7f27e18deb — 19/10/2026
Executada por autorização expressa da Tempo: dez fontes/175 assets, zero migrations; 29 recursos disponibilizados pela interface real de onala, oito zonas e 19 relações (1 confirmada/18 pendentes) recuperados com origem e histórico. Reserva, permissões, revisão independente, 30 originais e dados posteriores preservados. Backup consistente171 tabelas/ficheiros abrangidos protegido no Linux, hashes conferidos, sem repetir restauro/scans. Artigo e imagem Agronegócio e oito zonas conferidos no navegador; editor final aguarda apenas renovação MFA de15 minutos. Prova: operacao-QA/PROVA-DELTA-DESTINO.json; resultado e reversão: operacao-QA/RESULTADO-DISPONIBILIZACAO-EDITORIAL.md. Equipa sem registos não bloqueou. Inhambane/território excluídos.
[FECHO-EDITORIAL-1d7f27e18deb] Conferência final do editor concluída na sessão real de onala após MFA renovado: corpo, opções de imagem e histórico recuperados; conteúdo não alterado para ensaio. Consulta do artigo/imagem e oito zonas comprovada. Entrega do delta concluída; não certifica componentes fora do âmbito. PROVA-NAVEGADOR-DELTA-DESTINO.json.
Reconciliação técnica dos43 componentes —19/10/2026
Leitura fresca do destino:1192 ficheiros sem divergências,171 tabelas/88 migrations;29 recursos/8 zonas/19 relações. Zero oportunidades/negócios/dossiers/cadastros educativos reais; gates globais antigos impedem zonas/referências/educação/interesses/Balcão apesar de dupla administrativa. QA território/suportes/programas:24 fontes distintas,6 sobreposições,zero migrations; tabelaQA adicional utilizadores não é dependência executável nem deve ser transportada. IA actual é evidence_only local, sem necessidade de credencial de modelo; SuiteCRM desligado/sem credenciais. Partilha de documento na sala existe; ACL por destinatário individual falta. Linha25 corresponde a fechos técnicos/avaliaçãoFortify, não módulo de negócio. Defeito concreto: listagem pública de zonas omite primary_territory_id antes de resolver hierarquia. View dos mesmos43 actualizada com causa, critério, acção e esforço; não foram instalados incrementos nem alterados dados/roles remotos. Provas: PROVA-RECONCILIACAO-43-LEITURA.json, RECONCILIACAO-43-QA-FONTES.json e RECONCILIACAO-43-SCHEMA-QA.json. Estimativa de disponibilização28–48h; desenvolvimento+QA dos recortes delimitados112–216h, sem somar linhas sobrepostas e sem prazo fictício para dados/decisões.
Revisão integrada pela Tempo — 19/10/2026
Origem: instrução expressa da Tempo nesta sessão. A equipa avalia produto, conteúdos, navegação e apresentação; o diagnóstico técnico dos 43 componentes continua a cargo da implementação. Não encerra componentes por abertura de ecrã.
Registar feedback na mesma matriz, usando o ID existente do requisito: classificar em falha funcional, conteúdo, navegação ou apresentação visual; incluir URL, conta/função sem credenciais, resultado esperado/observado, saída/formato e evidência. Acrescentar causa técnica, responsável pela correcção, critério e prova do delta. Uma sugestão não passa automaticamente a regra nem a autorização de publicação. Não criar outra matriz/backlog.
Percursos de revisão já disponíveis no ambiente reservado: /documentos, /zonas, /sectores, /agronegocio, /investimentos, /simulador-fiscal, /minhas-oportunidades, /investidor/manifestacoes e gestão editorial /management/portal-services. Limites por função e funcionalidades por instalar permanecem na view dos 43 componentes. O bloqueio de gestão por gates globais antigos é uma pendência técnica; não pedir à equipa que escolha novamente os papéis aprovados. Dossier legítimo ainda inexistente impede apenas a respectiva prova positiva, não os restantes percursos.
Saídas abrangidas: dossier HTML de impressão/PDF pelo navegador e DOCX/ZIP existentes; recibo Balcão TXT existente e apresentação HTML preparada; Terra/DUAT impressão; CSV zonas, oportunidades, plano financeiro e ferramentas financeiras; JSON de plano para recuperação. CSV e JSON são formatos de dados, não relatórios paginados. Conferir os mesmos valores, unidades, moeda, datas, fontes, estados e exclusões em ecrã/exportação; zero não significa desconhecido. Relatório fiscal com parâmetros indeterminados não pode apresentar um total confirmado.
Delta preparado em QA privado, não instalado: recibo legível com resumo, dados declarados, referências documentais, data CAT, navegação e impressão A4; original TXT e autorização preservados. Dossier DOCX ajustado de Letter para A4, coerente com impressão HTML; identidade InvesteMoz no dossier/Terra. Corrigida a selecção do território principal na listagem pública de zonas. Sem migrations, dados publicados ou permissões alteradas. Manifesto: outputs/investmoz-revisao-integrada-QA-20261019/MANIFESTO-DELTA-QA.json.
Verificações: renderização Blade com dez asserções (acentos, zero, ausente, opções, escaping, autorização anterior à resposta e TXT mantido); regressão da hierarquia pública de zonas com rollback integral num clone QA; TypeScript e build concluídos sem erros. Não há navegador ligado: falta inspecção visual real de ecrã, paginação e impressão e verificação HTTP autorizada do novo recibo. Não declarar saídas aceites apenas por estes testes. Scans/restauros e percursos aceites não foram repetidos. Activo e servidor de homologação não foram alterados nesta preparação.
Disponibilização consolidada continua com dependências anteriores: acessos por âmbito, composição dos incrementos QA separados, definições de serviço, conteúdos autorizados, build, backup fresco e delta por componente. As faixas anteriores 28–48h de disponibilização e 112–216h dos recortes de desenvolvimento não são substituídas por este lote visual; revisão visual restante deste delta: 2–4h após navegador disponível, sem somar novamente verificações já incluídas. Reversão: repor apenas os ficheiros/assets deste delta quando ainda coincidirem com os hashes instalados, preservando versões posteriores; zero reversão de dados/schema.
Complemento do delta de apresentação: seis asserções passaram para A4 e identidade InvesteMoz em DOCX/HTML, sem guardar documentos nem tratar a estrutura OOXML como prova visual. PROVA-DOSSIER.json. Seis fontes e 175 ficheiros de build preparados; zero migrations. Navegador sem ligação: pedido de reposição enviado, sem novo pedido de MFA. Nenhuma operação remota executada neste lote.
Revisão visual retomada no Edge — 19/10/2026
Ligação restabelecida; homologação HTTPS autenticada. Inspeccionados página inicial e simulador instalado, apenas por leitura, sem dados sintéticos. Prova: outputs/investmoz-revisao-integrada-QA-20261019/SIMULADOR-SEM-HISTORICO-DESTINO.png.
Feedback a tratar na mesma matriz: navegação — comandos «O meu painel» e «Manifestar interesse» repetidos na página inicial; proposta de simplificação por avaliar, não falha funcional confirmada. Conteúdo — rodapé apresenta comercial@tempo.co.mz mas a ligação aponta para mailto:info@tempo.co.mz; reconciliar o cadastro/configuração de origem antes de escolher silenciosamente um endereço. Apresentação visual — página do simulador mostra hierarquia de títulos e estado vazio compreensíveis; etapas usam deslocamento horizontal, a conferir por teclado e em viewport estreito antes de classificar como defeito.
Impedimentos concretos: a conta actual não tem simulações guardadas e não existe relatório real recuperável nesta sessão; não criar dados fictícios no destino. A política de segurança do navegador recusou abrir o exemplar QA por protocolo file:, autorizando somente HTTP/HTTPS. Não se tentou contornar a restrição nem servir o mesmo ficheiro por outro percurso. O novo recibo, DOCX e respectiva paginação mantêm aceitação visual pendente; leitura da página instalada não os certifica. A instalação remota do delta não foi executada.
Revisão integrada por HTTP em QA — 19/10/2026
Origem: instrução expressa da Tempo nesta sessão. Consolidada a repetição na página inicial: preservados o painel e a manifestação no cabeçalho comum; removida a segunda barra na inicial e o botão duplicado do destaque. Os destinos contextuais das oportunidades permanecem. Prova DOM: um link «O meu painel», um «Manifestar interesse», zero botões homónimos repetidos na inicial.
Contacto reconciliado com esclarecimento expresso da Tempo: comercial@tempo.co.mz é departamental; info@tempo.co.mz é institucional. Rodapé geral usa a nova configuração institutional_contact_email, texto e mailto derivados da mesma fonte. Não altera contas nem o canal comercial.
Exemplos acessíveis nesta máquina em http://127.0.0.1:18555/qa/revisao-integrada, com a sessão da conta sintética QA. Recibo real do fluxo Balcão no clone, relatório gerado pela mesma biblioteca do produto com 11 secções/60 linhas, HTML de impressão e DOCX protegido. Dados fictícios assinalados no início e no título; nenhum processo criado na homologação. Acesso anónimo redirecciona para login; outra conta sintética é recusada. As rotas de ensaio estão fora do pacote e têm guarda da base QA, porta55441, além da autenticação e da conta específica. Sem contornar file:; acesso normal à aplicação HTTP expressamente pedido pela Tempo.
Falhas observadas e corrigidas em QA: contraste do último cabeçalho das tabelas; limites de largura da leitura em ecrã; larguras do anexo independentes da tabela Campo/Conteúdo/Origem; valores monetários com separadores e moeda declarada; estados de financiamento/equipa/execução em português; custo/prazo ausentes identificados; metadados do questionário não expostos como campos de negócio. Snapshots, cálculos, números, permissões e fontes preservados. Novos testes do delta: 12 asserções de apresentação, 10 do recibo, acesso privado, build e TypeScript. Não foram repetidos scans, restauros ou percursos aceites. Paginação efectiva e renderização DOCX: consultar PROVA-PAGINACAO.json; não presumir concluídas enquanto esse registo não existir.
Manifesto e payload: outputs/investmoz-revisao-integrada-QA-20261019/MANIFESTO-DELTA-QA.json e DELTA-REVISAO-INTEGRADA-QA.zip. Dez fontes e build, zero migrations. Excluídos fixtures, conta/sessões, segredos, renderer, Inhambane/território. Nenhuma alteração ao servidor de homologação ou activo. Para disponibilização futura, manter revisão por hashes, composição expressa com incrementos autorizados, backup fresco e reversão selectiva sem substituir dados posteriores. Este delta não encerra a instalação integrada dos43 componentes nem a prova com dossier legítimo.
PDF guardado pelo utilizador ? revis?o QA
Recebido SINTETICO-QA-relatorio-InvesteMoz (2).pdf: metadados confirmam exporta??o pelo Microsoft Word, n?o impress?o nativa Edge. Inspeccionadas as 13 p?ginas: sem cortes/sobreposi??es, cabe?alhos repetidos, rodap? privado e numera??o, anexo completo at? ? linha 60. Prova: outputs/investmoz-revisao-integrada-QA-20261019/PROVA-PDF-WORD-UTILIZADOR.json. Confirma exporta??o DOCX/PDF; impress?o directa do HTML pelo Edge permanece pendente. Sem altera??es remotas.
Plano de conclusão P1–P6 adoptado pela Tempo
Revisão de proposta d87970e701f0, de 19/10/2026. O objectivo é tornar utilizável o produto existente na homologação reservada. As autorizações anteriores mantêm-se; a preparação não autoriza publicação adicional. Esta revisão documental consolida o trabalho: ainda não é um pacote executável, pois faltam o ajuste de acessos P1, a fusão final P2 e o respectivo ensaio. Nenhuma operação no servidor foi executada nesta passagem.
| Pacote | Operações agrupadas | Resultado utilizável para encerrar | Esforço restante de referência |
|---|---|---|---|
| P1 — Acessos efectivos | Reconciliar gates de zonas, referências, educação, interesses, Balcão e assistência com a administração aprovada; ponte de modalidades dos negócios; grants quando existirem contas. | Titular autorizado consegue guardar, recuperar e executar a operação do seu âmbito; outra conta é recusada. MFA, limites por dados, auditoria e independência conservados. Registos pendentes não bloqueiam as contas existentes. | 8–14 h |
| P2 — Composição QA única | Território, suporte documental e programas: 24 fontes distintas, seis sobreposições; preservar editorial instalado; compor o delta visual QA de dez fontes num único build e manifesto. | Fontes reconciliadas sem sobrescritas silenciosas; build único e prova do delta no clone. O build visual isolado não é a revisão consolidada. | 6–10 h; sobreposições e delta visual contabilizados uma vez, reestimar apenas nova divergência concreta |
| P3 — Registos e conteúdos privados | Transportar 30 fichas reconciliadas, dois originais e referências; mapear actores/identidades do destino; registar project-change e project-follow-up conservando project-preparation v5. | Fichas e suportes privados recuperáveis pela interface; repetição idempotente; fontes, versões e relações conservadas. Sem importação de contas QA e sem publicação automática. | 3–5 h |
| P4 — Catálogos e geografia | Próximo lote real delimitado por identidade, edição, geometrias existentes e autorização; ambiguidades visíveis. | Itens nominais reconciliados e recuperáveis; catálogo existente continua utilizável sem coordenadas ou dados ainda desconhecidos. Fechar manifesto do lote antes de escrita; não fabricar geometrias. | 4–8 h para o lote inicial delimitado |
| P5 — Disponibilização e recuperação | Backup fresco consistente; preflight por hashes; aplicação nominal; configuração necessária; reversão selectiva com dados posteriores. | Revisão identificada funciona na homologação e pode ter a apresentação revertida sem restaurar dump sobre dados posteriores. | 2–3 h |
| P6 — Verificação do delta | Acessos, conteúdos e consumidores alterados; caso e participantes legítimos quando existirem; provas aceites reutilizadas. | Tarefas afectadas concluídas com resultado recuperável; lacunas restantes classificadas por instalação, configuração, permissão, conteúdo, verificação ou código. Abrir uma página não encerra o componente. | 4–6 h |
Três esclarecimentos de estimativa
- 27–46 horas de trabalho para P1–P6. A soma anterior de 28–48 h incluía P7 (1–2 h), assistência local. P7 é independente e não bloqueia a entrega. As faixas são esforço de uma pessoa, não duração de indisponibilidade nem horas já consumidas; não há calendário garantido a partir destas faixas. A cópia consistente requer uma janela própria dentro de P5.
- Sem dupla contagem nem catálogo ilimitado. P2 conta as 24 fontes e as seis sobreposições uma vez; P6 cobre a conferência afectada e não repete provas aceites. P4 inclui somente o lote inicial nominal que couber no âmbito delimitado. Acervo integral, geometrias inexistentes, novas decisões de divulgação ou lotes ainda indefinidos não cabem implicitamente nas 4–8 h. O delta visual já preparado não volta a ser desenvolvido; a sua composição e regressão pertencem a P2/P6. As faixas não foram abatidas por horas presumidas desta sessão.
- Desenvolvimento separado: 112–216 h para os recortes anteriormente delimitados. Não é saldo para instalar funcionalidades existentes nem condição para a homologação. Não inclui promessa de cobertura fiscal integral ou capacidades sem contrato definido. SuiteCRM (configuração/prova de leitura anteriormente estimadas em 4–8 h), registos futuros da equipa e assistência local permanecem fora do caminho crítico. Nenhum dado desconhecido é convertido em zero, confirmado ou obrigatório por conveniência técnica.
Inclusão expressa dos incrementos 36–39
| Nº | Incremento proposto | Base QA identificada | Tratamento e decisão |
|---|---|---|---|
| 36 | Onde se localiza / associações territoriais e produtivas | 660a25e37e1e | Incluir títulos, aplicabilidade e reutilização territorial sem presumir pertença a regimes/estruturas. Decisão nova: inclusão nesta revisão de homologação. |
| 37 | Lote Inhambane, 30 fichas e dois originais | Reconciliação integral do lote existente | Transporte privado idempotente, com mapeamento de identidades. Confirmar inclusão; publicação por ficha/documento continua acto separado. |
| 38 | 11 programas e uma carteira | 3968efbbde8c | A classificação das 12 fichas já foi decidida pela Tempo; não voltar a pedi-la. A decisão nova é incorporar o incremento compatível no destino. |
| 39 | Reutilização de originais e contexto documental do dossier | 306e3ebc8a70 | 31 referências a dois originais, sem duplicar bytes, preservando permissões, versão/citação/hash. Confirmar inclusão; prova positiva num dossier legítimo fica delimitada quando existir. |
Os incrementos têm zero migrations novas declaradas. A união conhecida é de 24 fontes, com seis sobreposições internas; o delta de apresentação tem dez fontes adicionais, sem sobreposição de caminhos com essas 24. P1 ainda acrescentará as fontes exactas do ajuste de gates. O manifesto executável final deverá identificar os hashes finais e conflitos resolvidos; não afirmar agora um total final de ficheiros. Não reaplicar migrations antigas nem copiar uma árvore QA inteira.
Sequência consolidada e recuperação
Preparar P1 e P2 no clone, preservando as autorizações por âmbito e a versão editorial instalada. Preparar as prévias P3/P4 com originais privados, hash/scan já comprovados reutilizados quando os bytes forem iguais, conflitos de identidade e custódia no destino. A decisão de inclusão 36–39 fica expressa antes da respectiva execução. SuiteCRM, assistência local e novas contas não condicionam esses trabalhos.
Antes da troca: comparar novamente aplicação/build/schema/configuração relevantes, proteger cópia fresca da base e ficheiros numa janela sem escritas ou com reconciliação demonstrada, conservar chaves de recuperação protegidas e proprietário/modo Linux. Aplicar só o manifesto consolidado e definições nominais; preservar dados e contas, sem publicação adicional. P6 verifica apenas o delta. Reversão repõe a apresentação compatível por hashes e conserva backend necessário, definições e registos posteriores; não executar down nem restaurar um dump sobre a base em utilização. Documentar fontes exactas que permanecem antes da execução.
Roteiro curto para revisão da Tempo
Todos os acessos abaixo usam https://teste-investidor.tempo.co.mz, reservado à homologação. Entrar em /login com a própria conta e cumprir as verificações existentes. Nala/onala mantêm somente os âmbitos aprovados; Promotor/Validador não autoriza autoaprovação. As contas futuras de Aurora, Palmira e Mario recebem as atribuições já aprovadas quando existirem.
| Tarefa | Acesso | Resultado esperado | Limitação conhecida / trabalho do Codex |
|---|---|---|---|
| Cadastrar | /minhas-oportunidades, /management/portal-services | Guardar preparação com dados disponíveis e suporte privado, sem perder dados desconhecidos. | Lote Inhambane ainda depende da inclusão 37; funções de gestão afectadas serão reconciliadas em P1. |
| Recuperar | /investimentos, /balcao-virtual/painel | Voltar noutra sessão e recuperar o mesmo contexto, versão, pedidos e documentos autorizados. | Vínculo documental positivo depende de dossier legítimo; não inventar caso no destino nem bloquear os restantes componentes. |
| Rever | /minhas-oportunidades, /management/portal-services | Revisor independente encontra versão e suporta decisão/correcção rastreável pelo editor existente. | MFA recente nas operações privilegiadas; P1 elimina gates globais incompatíveis com âmbitos aprovados, sem autoaprovação. |
| Disponibilizar | Editor do item nas áreas anteriores; consulta em /documentos, /zonas, /oportunidades | Conteúdo nominal autorizado aparece ao público permitido da homologação; originais privados continuam privados. | 29 recursos/oito zonas/19 relações já disponibilizados; publicação de novas fichas ou documentos não está autorizada por este plano. Sem abertura pública do portal. |
| Acompanhar | /investidor/manifestacoes, /management/interests, /balcao-virtual/painel | Interessado recupera estado/histórico; equipa autorizada responde e actualiza o que lhe compete. | P1 reconcilia gestão da equipa; P3 regista duas definições internas ausentes. Reutilizar provas aceites do interessado. |
| Produzir relatório/exportação | Dossier recuperado pelo percurso; /simulador-fiscal; recibo pelo pedido do Balcão | Resultado legível com títulos, resumo, unidades, moeda, fontes e estados; exportação preserva conteúdo e privacidade. | Delta visual 1beba873ea66 ainda só QA; DOCX/PDF Word de 13 páginas conferidos. Impressão directa Edge pendente. Exemplos sintéticos só no QA local por HTTP autenticado; não transportar para o destino. |
Progresso por resultado utilizável
Os 43 componentes continuam na mesma matriz. Cada actualização deve indicar tarefa concluída, URL, utilizador/âmbito, resultado guardado e recuperado, prova reutilizada ou delta, e impedimento restante com causa concreta. Instalação ou abertura de ecrã são passos técnicos. A Tempo valida utilidade, conteúdo, navegação e apresentação; o Codex resolve dependências, configuração, permissões e diferenças de versões. Feedback permanece na mesma matriz, nas categorias falha funcional, conteúdo, navegação e apresentação visual. Sem outro backlog.
Progresso executável de P1 e P2 em QA
Candidata QA 167b5db97653: 51 fontes e um build de 177 ficheiros. Zero migrations, importações ou publicação. As 24 fontes dos incrementos e seis sobreposições foram compostas por fusão em três versões, preservando o editorial instalado; o delta visual anterior integra o mesmo build. Os controladores e serviços editoriais não afectados mantêm os hashes. Originais, fichas reais, actores e sessões QA não fazem parte do payload.
| Operação que passou no clone | Acesso QA (autorização aplicável) | Prova e limite |
|---|---|---|
| Preparar zona com informação desconhecida, guardar e recuperar como rascunho | Zonas | Sem confirmar regime, validar fonte ou publicar. Administração aprovada/MFA; revisões técnicas específicas mantêm as designações existentes. |
| Criar e recuperar cadastro educativo e referência de formulário | Educação; referências | Escrita real transaccional no QA, revertida no fim. Prévia económica também devolve plano ao administrador sem grant global. |
| Atribuir interesse sem expor conteúdo privado; recusar atribuição desactualizada | Atribuições de interesses | Etag, bloqueio transaccional e auditoria; a lista de triagem não contém email/mensagem. |
| Responder/actualizar estado e próxima acção de interesse atribuído; recuperar e negar outro registo | Interesses atribuídos | Estado, acção e histórico verificados pelo serviço. Administração não concede consulta universal dos interesses. |
| Atribuir analista ao pedido do Balcão e recuperar pelo analista | Atribuições do Balcão | O administrador que faz a atribuição continua sem acesso ao payload/dossier; metadados de triagem sem identidade, título privado ou documentos. |
| Usar correspondências exactas de seis modalidades nos perfis existentes | Negócios | company_sale, franchise, real_estate, land_right, investment_project e business_partnership. Grant da categoria correspondente, MFA, limites e proibição de auto-revisão preservados. |
| Guardar e recuperar programa, distinguir não aplicável de informação em falta, reutilizar original privado | Editor | Fonte documental, versão/hash e vínculo à oportunidade recuperados; repetição não cria documento nem suporte duplicado. Outra conta é recusada. Implantação divergente fica visível sem sobrescrever. |
Passaram 42 verificações P1 e 13 P2, sintaxe PHP, TypeScript e build. Os actores e marcadores de MFA destes testes são exclusivamente sintéticos no clone; não comprovam nova autenticação real nem alteram contas do destino. Todos os dados de ensaio foram revertidos por transacção. Não foram repetidos scans, restauros, importações nem percursos aceites. As novas interfaces de atribuição foram compiladas mas ainda não conferidas interactivamente no navegador; os links não significam que a conta normal de revisão QA tenha recebido administração.
P1 continua parcial por duas divergências concretas: as restantes 21 modalidades não têm correspondência inequívoca de categoria no contrato actual; e a assistência interna ainda consulta dados privados por autorização global. Nenhuma foi aberta por aproximação. O cadastro próprio e os restantes componentes não dependem destes dois pontos. Não há decisão organizacional nova a pedir: a reconciliação técnica continua a cargo do Codex. Registos futuros da equipa não bloquearam esta preparação; não se fabricou email/MFA nem se concederam grants a contas inexistentes.
P2 tem composição/build e delta de persistência/permissões preparados em QA. A conferência de interface pendente mantém-se explícita. A candidata não constitui decisão de instalação remota; a inclusão dos incrementos 36–39 e qualquer disponibilização no servidor continuam sujeitas à decisão expressa já identificada. Importação privada e publicação permanecem separadas. Pré-condições frescas, janela/backup e reversão nominal pertencem a P5; não usar o ZIP como instalador automático. O plano P1–P6 e a referência conjunta de 27–46 h mantêm-se, sem os reformular ou apresentar esta faixa como esforço só de P1/P2.
Reconciliação das 21 modalidades e interfaces — QA 19/10/2026
Candidata 6508c44b9fc1: 56 fontes e 177 assets; substitui 167b5db97653 apenas em QA. Sem migrations, instalação remota, importação, publicação ou concessões a contas reais. Editorial preservado na composição. Treze das 21 modalidades pendentes têm correspondência sustentada no código existente; somadas às seis anteriores, são 19 de 27 no contrato de acesso. Correspondência de acesso não certifica todos os contratos especializados.
| Código | Modalidade | Correspondência / lacuna e acção |
|---|---|---|
participation_sale |
Venda de participação | Venda de negócio: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
capital_increase |
Aumento de capital | Financiamento: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
financial_investor |
Investidor financeiro | Financiamento: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
strategic_partner |
Parceiro estratégico | Parceria: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
buyer_search |
Procura de comprador | Venda de negócio: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
joint_venture |
Joint venture | Parceria: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
succession |
Sucessão | Venda de negócio: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
expansion |
Expansão | Projecto de investimento: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
internationalization |
Internacionalização | Projecto de investimento: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
agricultural_investment |
Investimento agrícola | Projecto de investimento: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
financing_request |
Pedido de financiamento | Financiamento: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
concession_opportunity |
Oportunidade de concessão | Concessão: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
supply_opportunity |
Oportunidade de fornecimento | Fornecimento: correspondência sustentada pelo formulário/enumeração existentes; ponte e gravação corrigidas em QA. Grant correspondente continua obrigatório. |
company_purchase |
Compra de empresa | Preparação própria existente; falta formulário/contrato de procura do comprador. Lacuna funcional. |
position_assignment |
Cessão de posição | Objectos contratuais existentes; identificar o direito/contrato concreto. Não existe contrato de submissão específico nem categoria única. |
asset_sale |
Venda de activo | Formulário de activo existente; âmbito depende do objecto. Falta ponte de acesso que não transforme todo activo em empresa ou imóvel. |
asset_lease |
Locação de activo | Reutiliza formulário de activo; falta ponte delimitada segundo objecto/operação, sem presumir imóvel. |
business_unit_transfer |
Transmissão de unidade de negócio | Unidade/objectos existentes; operação e âmbito da transmissão ainda não expressos no contrato de acesso/submissão. |
recovery |
Recuperação | É finalidade, não operação única: explicitar venda/projecto/financiamento aplicável. Não criar equivalência automática; preparação pode continuar. |
mining_license |
Licença mineira | Armazenamento de licença/evidência existe; falta contrato específico de oferta/submissão e âmbito. Não equiparar a terra ou concessão. |
forestry_license |
Licença florestal | Armazenamento de licença/evidência existe; falta contrato específico de oferta/submissão e âmbito. Não confirmar transmissibilidade pela classificação. |
O formulário deixava a natureza genérica substituir a modalidade e o servidor exigia igualdade entre ambas. Agora ficam separadas e a modalidade original é preservada. A percentagem de participação também tinha um limite numérico acidental de 8%; foi corrigida para 0–100%, conservando o limite textual. Nenhuma correspondência confirma financiamento, titularidade, licença ou publicação. Organização, categoria, MFA, elevação operacional, auditoria e impedimento de auto-revisão continuam aplicáveis; não foram criados papéis ou grants universais.
Passaram 87 verificações transaccionais do delta (rollback), TypeScript, sintaxe PHP e build. No navegador, com contas sintéticas e entrada normal/MFA no clone: atribuir interesse e recuperar, recusar outro interesse; atribuir pedido do Balcão e recuperar pelo responsável noutra sessão, recusar o administrador não atribuído e outro pedido. Mensagens de fundamento em português, preservando o preenchimento; conflito desactualizado preparado como erro de validação recuperável. As provas anteriores são históricas reutilizadas, não reexecutadas. Os registos e auditoria sintéticos ficam privados no clone; as contas de ensaio foram retiradas da allowlist HTTP. O par QA inicialmente vazio não foi apagado contornando o trigger: o par sintético permanece apenas no clone, excluído do pacote e sem entrada HTTP autorizada.
Interfaces QA: atribuir interesses, interesses atribuídos, atribuir Balcão, negócios. Exigem sessão e âmbito existentes; estes links locais não indicam instalação no servidor.
| Pacote | Concluído / restante | Esforço restante |
|---|---|---|
| P1 | Correspondências e interfaces deste delta verificadas em QA. Oito modalidades acima mantêm lacunas delimitadas; grants da equipa só quando existirem contas. P7 separado. | 0 h para repetir o recorte aceite; contratos especializados exigem estimativa própria após definir o objecto/critério concreto. |
| P2 | Composição, sobreposições, build e manifesto QA concluídos; instalação não incluída. | 0 h de recomposição sem nova divergência. |
| P3 | Transporte privado das 30 fichas, dois originais/referências e duas definições internas ainda por executar. | 3–5 h |
| P4 | Lote inicial nominal, identidades/edições/geometrias e autorização por fechar antes da escrita. Catálogo utilizável não fica bloqueado. | 4–8 h, condicionado ao lote delimitado |
| P5 | Preflight fresco, backup consistente, instalação nominal e reversão após decisão. | 2–3 h |
| P6 | Conferência do delta de conteúdos/consumidores após P3–P5; reutilizar provas actuais. Vínculo com dossier legítimo quando disponível. | 2–4 h |
Saldo de disponibilização do produto existente: 11–20 h, condicionado ao lote P4 e às pré-condições do destino; não inclui espera por decisão/acesso nem desenvolvimento dos contratos especializados. Os 27–46 h são referência inicial do conjunto, não saldo. Não há base para estimar de forma responsável em bloco o desenvolvimento das oito modalidades: concluir por modalidade exige contrato explícito, âmbito sem acesso indevido, gravação/recuperação e submissão/revisão compatíveis. Recuperação e cessão exigem primeiro identificar a operação concreta; não constituem automaticamente novos módulos. P7 permanece fechado e separado, sem bloquear P1–P6. Incrementos 36–39 e instalação remota continuam para decisão expressa. Importação privada e publicação mantêm-se separadas.
P1/P2 — prova complementar de actualização, 20/10/2026
Mantém-se a revisão QA 6508c44b9fc1 (56 fontes/177 assets, hashes conferidos). Origem 167b5db97653; não reconstruir nem repetir provas aceites. Pela interface e login/MFA sintético: interesse actualizado de Recebido para Em análise, nota preservada no histórico após recarregar; pedido do Balcão actualizado de Submetido para Em análise pelo analista atribuído, resposta fundamentada e histórico recuperados. Reutilizadas as provas de atribuição, recuperação noutra sessão e recusa de outros registos. Zero alterações remotas, importações, publicações ou grants reais. Contas sintéticas novamente retiradas da allowlist HTTP.
Limite concreto: o agendamento por calendário não foi certificado — a entrada automatizada não actualizou o estado React e o validador existente recusou a falta de prazo. Esse erro ainda aparece em inglês. Não inferir falha de gravação do estado/nota, nem declarar o calendário aprovado. A relação entre próxima acção e prazo já existia; não foi criada exigência organizacional.
P1: 13 das 21 modalidades reconciliadas, oito lacunas de contrato/âmbito individualizadas na tabela anterior; não encerrar todos os contratos especializados. P2: composição QA concluída; sem nova alteração de código. P7 assistência fechada e separada. Saldo P1–P6: 11–20 h para disponibilização do recorte existente (P3 3–5, P4 4–8 condicionado ao lote, P5 2–3, P6 2–4); desenvolvimento especializado sem estimativa fechada e sem bloquear os restantes componentes. O delta de actualização agora concluído não justifica repetir nem voltar a somar horas de P1/P2. Manifesto actualizado apenas nas provas, mesma revisão de fontes.
P3/P4 preparados e proposta P5/P6 — 20/10/2026
Revisão QA 3fd1f15bd01c, sucessora de 6508c44b9fc1: 56 fontes e 177 assets do build preservado. Duas fontes PHP corrigidas: mensagens do prazo em português e limite funcional no MNE reutilizando OpportunityCanonicalContract::deliveryBlockers. ExistingBusinessIntake não consultava esse limite; agora submissão e publicação de financiamento/concessão/fornecimento não são habilitadas por correspondência de acesso. A preparação permanece guardável. Cinco modalidades verificadas por transacção/rollback: capital_increase, financial_investor, financing_request, concession_opportunity, supply_opportunity. Nenhum módulo experimental foi ligado. As seis categorias base mantêm os bloqueios anteriores. As oito lacunas contratuais e P7 permanecem separados.
Calendário: mensagem de falta de prazo traduzida; edição por teclado, gravação e recuperação de 21/10/2026 com a próxima acção passaram no navegador QA. Não se alterou o componente de data: o preenchimento automático isolado não actualizava o estado React, enquanto a edição por teclado o actualiza. Prova anterior de actualização e limites reutilizada; sem repetir importações, scans, restauros ou percursos aceites. Sintaxe PHP passou; hashes dos 177 assets preservados, sem recompilação desnecessária por alteração exclusivamente PHP.
P3, manifesto privado: 30 fichas com identidade e hash actual do QA técnico, secções da fonte e relações; dois originais identificados por SHA256, versão e correspondência por bytes no clone do destino. As fichas continuam privadas; IDs de actores/organizações QA não são transportáveis. Definições project-change e project-follow-up extraídas de config/virtual-desk.php, incluindo campos e hash, comparadas com as versões do clone. Não substituir project-preparation v5 nem reassociar pedidos existentes. Nenhuma importação foi executada. O manifesto de identidades não é ainda um payload de aplicação autenticada.
P4, lista nominal: 27 entradas de referência (quatro edições de catálogo, 12 sectores e 11 actividades) e 24 referências territoriais com origem/identidade/versão e correspondências no clone. São inventário para reconciliação; zero referências novas autorizadas para escrita e zero geometrias novas ou substituídas incluídas. Não transportar catálogos de exemplo ou fonte pendente apenas por existirem localmente. Referências existentes são reutilizáveis por identidade/edição; divergências ficam por item e nunca se resolve por coincidência de ID local. A lista completa está no MANIFESTO-P4-REFERENCIAS-GEOMETRIAS.json. A base é um clone local, não prova fresca do servidor.
| Ordem P5/P6 | Operação e condição verificável | Reversão / limite |
|---|---|---|
| 1 — preflight por leitura | Conferir revisão/hash dos ficheiros nominais, schema usado por P1/P2 e P3, flags, operador/MFA, scanner Unix, worker e armazenamento. Comparar cada identidade/edição/hash dos manifestos com o destino actual. Parar apenas a operação divergente e apresentar diferença. | Não executar pacote de migrations. Esta candidata contém zero migrations. Não usar o clone como prova de estado remoto fresco. |
| 2 — backup fresco | Suspender escritas HTTP, tarefas agendadas e consumo de filas no recorte durante cópia consistente da base e ficheiros privados; registar inventário, hashes, UID/GID/modos. Incluir configuração e chaves de desencriptação no envelope protegido com recuperação fora do perfil Windows. Retomar só após fecho consistente. | Reutilizar prova aceite de restauro; nesta execução não criar backup nem repetir restauro. Recuperação total é contingência, não reversão normal. |
| 3 — código/build | Guardar cópia anterior por caminho/hash; aplicar apenas payload da revisão identificada, incluindo um build; efectuar limpeza/recriação de caches compatível com destino e processo existente. | Repor só ficheiros ainda com hash aplicado. Ficheiro modificado posteriormente gera conflito para reconciliação; nunca sobrescrever. |
| 4 — dados privados P3 | Produzir prévia fresca pelo importador existente; reusar originais por hash, confirmar scan real no destino, resolver custódia/permissões por identidade autorizada, criar apenas fichas inexistentes e referências compatíveis. Registar journal de IDs/criação/hash/versão/execução. | Não publicar recursos nem oportunidades; preservar edições posteriores. Sem apagar ficheiros partilhados, histórico ou relações. Corrigir/desactivar só registos deste lote pela recuperação suportada; versões usadas por dossiers permanecem. |
| 5 — serviços internos | VirtualDeskInstallationController, fluxo autenticado de instalação: registar apenas project-change/project-follow-up ausentes; comparar hashes se já existirem. Versionar sem substituir versões anteriores. Activação interna do serviço deve constar da decisão de disponibilização; não equivale a publicação de conteúdo. | Conservar versões referidas por pedidos posteriores. Retirar da escolha para novos pedidos apenas por mecanismo suportado; não eliminar versões ou pedidos. Se esse mecanismo não estiver disponível, conservar definição instalada e reverter só apresentação/código. |
| 6 — referências P4 | Nesta prévia não há operação nova de escrita de geometrias/catálogos. Revalidar correspondências e reutilizar destino. Nova edição real exige identificação nominal e revisão expressa do manifesto. | Nenhuma geometria existente é substituída. Não converter desconhecido em confirmado. |
| 7 — verificações do delta | Entrada autorizada; guardar/recuperar próxima acção e data; limites MNE sem activar contratos; fichas privadas/originais e duas definições recuperáveis; pesquisa/filtros/contexto apenas onde alterados. Vínculo positivo com dossier legítimo quando existir. | Provas aceites reutilizadas; não criar processo fictício no destino. Se faltar dossier legítimo, registar essa única prova pendente, sem bloquear os restantes componentes. |
| 8 — fecho | Retomar escritas/worker e entregar estado por componente com URLs, alterações nominais e impedimentos. Conservar manifesto de execução e reversão. | Reversão normal conserva dados posteriores e estruturas/definições aditivas utilizadas, sem down migrations nem dump antigo sobre dados recentes. |
Saldo delimitado revisto: 7–13 h — P3 2–4 h (staging privado/resolução de identidades/aplicação nominal); P4 1–2 h (reconciliação fresca da lista, sem novas geometrias); P5 2–3 h; P6 2–4 h. O calendário, tradução e protecção do limite funcional foram concluídos nesta passagem e estão contabilizados como trabalho realizado, não como horas adicionais futuras. Esta faixa substitui 11–20 h para este recorte delimitado; não cobre concluir todas as modalidades nem um futuro lote geográfico não identificado. Não inclui espera por acesso/decisão. P1/P2 ficam preparados em QA com os limites acima; P3/P4 preparados por leitura, não importados. Instalação, incrementos 36–39 e activação interna das duas definições precisam da decisão expressa identificada. Sem alterações remotas ou publicação nesta execução.
Pacote executável P3/P4/P5/P6 — c11a0c74766c, 20/10/2026
Staging privado concluído: 30 fichas actuais sem actores QA, dois originais com hash, duas definições internas. Destino conferido por SSH só leitura em 2026-10-20T08:37:24Z: fontes sem divergência, fichas/originais/duas definições ausentes, project-preparation v5 preservado. 27 referências e 25 territórios reconciliados (inclui Inhambane); zero escrita de catálogo/geometria. Aplicação QA 3fd1f15bd01c; pacote c11a0c74766c, com adaptador de prévia/aplicação autenticada, backup consistente, instalação nominal e reversão de apresentação. Após uso só o manifesto de build anterior é reposto automaticamente; 56 fontes compatíveis, todos os assets, dados, definições usadas e histórico permanecem. O novo adaptador passou sintaxe/integridade/bindings, sem repetir importação; aplicação desse adaptador ainda não ensaiada. Saldo de aplicação/verificação 4–7 h; oito lacunas/P7 separados. Decisão pendente: executar revisão exacta, inclusão expressa 36–39/P3 e activação interna das duas definições. Não publicar fichas/documentos nem conceder novos papéis. Ver proposta única na mesma Page e RECIBO-PACOTE-EXECUTAVEL.json. Sem alteração remota nesta passagem.
Pacote executável P3/P4/P5/P6 — 82dab3719ffc, 20/10/2026
Staging privado concluído: 30 fichas actuais sem actores QA, dois originais com hash, duas definições internas. Destino conferido por SSH só leitura em 2026-10-20T08:37:24Z: fontes sem divergência, fichas/originais/duas definições ausentes, project-preparation v5 preservado. 27 referências e 25 territórios reconciliados (inclui Inhambane); zero escrita de catálogo/geometria. Aplicação QA 3fd1f15bd01c; pacote 82dab3719ffc, com adaptador de prévia/aplicação autenticada, backup consistente, instalação nominal e reversão de apresentação. Após uso só o manifesto de build anterior é reposto automaticamente; 56 fontes compatíveis, todos os assets, dados, definições usadas e histórico permanecem. O adaptador foi aplicado apenas em clone isolado: 30 identidades/30 localizações/31 suportes/11 relações, login e MFA sintéticos normais; rollback antes do commit e recuperação após commit comprovados, repetição sem escritas. UUID de auditoria e recibo transaccional corrigidos; aplicação de 56 fontes inalterada. As questões de acesso público e diferenças visuais/login continuam separadas e abertas. Saldo de aplicação/verificação 4–7 h; oito lacunas/P7 separados. Decisão pendente: executar revisão exacta, inclusão expressa 36–39/P3 e activação interna das duas definições. Não publicar fichas/documentos nem conceder novos papéis. Ver proposta única na mesma Page e RECIBO-PACOTE-EXECUTAVEL.json. Sem alteração remota nesta passagem.
Pacote executável P3/P4/P5/P6 — 312965f2c653, 20/10/2026
Staging privado concluído: 30 fichas actuais sem actores QA, dois originais com hash, duas definições internas. Destino conferido por SSH só leitura em 2026-10-20T08:37:24Z: fontes sem divergência, fichas/originais/duas definições ausentes, project-preparation v5 preservado. 27 referências e 25 territórios reconciliados (inclui Inhambane); zero escrita de catálogo/geometria. Aplicação QA 3fd1f15bd01c; pacote 312965f2c653, com adaptador de prévia/aplicação autenticada, backup consistente, instalação nominal e reversão de apresentação. Após uso só o manifesto de build anterior é reposto automaticamente; 56 fontes compatíveis, todos os assets, dados, definições usadas e histórico permanecem. O adaptador foi aplicado apenas em clone isolado: 30 identidades/30 localizações/31 suportes/11 relações, login e MFA sintéticos normais; rollback antes do commit e recuperação após commit comprovados, repetição sem escritas. UUID de auditoria e recibo transaccional corrigidos; aplicação de 56 fontes inalterada. As questões de acesso público e diferenças visuais/login continuam separadas e abertas. Saldo de aplicação/verificação 4–7 h; oito lacunas/P7 separados. Decisão pendente: executar revisão exacta, inclusão expressa 36–39/P3 e activação interna das duas definições. Não publicar fichas/documentos nem conceder novos papéis. Ver proposta única na mesma Page e RECIBO-PACOTE-EXECUTAVEL.json. Sem alteração remota nesta passagem.
Execução autorizada 312965f2c653 em homologação — 2026-10-20T10:01:37Z
Autorização expressa da Tempo nesta conversa; aplicada exclusivamente em teste-investidor.tempo.co.mz. 56 fontes/177 assets (233 caminhos) conferidos; backup fresco consistente de 171 tabelas, privados, fontes/build e configuração, seis artefactos cifrados e recuperação existente preservada. Não foi repetido restauro aceite.
30 fichas privadas, 30 localizações, 31 suportes, 11 relações; dois originais internos com scan real limpo (uma tentativa cada), sem publicar. project-change/project-follow-up v1 internos activados; project-preparation v5 preservado. Reutilizadas 27 referências/25 territórios; zero escritas de catálogos/geometrias, migrations ou permissões. 160 tabelas integralmente iguais; registos anteriores nas tabelas acrescentadas conferidos por hash; 361 ficheiros anteriores fora do delta intactos. HTTP/fila activos. Recibo e acessos: outputs/investmoz-revisao-integrada-QA-20261019/p1-p2/modalidades-e-interface/RECIBO-EXECUCAO-312965.json.
Saldo: execução delimitada P1–P6 concluída; não somar outra vez as 4–7 h já executadas. Mantêm-se vínculo positivo com dossier legítimo, dados em falta/revisão independente, oito lacunas contratuais, capacidades por desenvolver, P7 e SuiteCRM. Reversão disponível só da apresentação: manter 56 fontes compatíveis, ambos os builds, dados, definições usadas e histórico. Não repor dump antigo sobre dados posteriores. As questões de autenticação prematura e diferenças visuais/login continuam separadas, com análise retomada; sem alteração remota adicional.
Retoma separada de autenticação e apresentação após 312965
Diagnóstico apenas em clone isolado: com a reserva ligada, GET /documentos devolve 302 para login; desligada só no processo QA, /documentos e /oportunidades devolvem 200 anónimo, enquanto /management/portal-services e /minhas-oportunidades continuam 302. A reserva global tem origem na decisão expressa da Tempo, não constitui uma nova obrigação pública de MFA e não foi desactivada no destino. Questão permanece aberta para distinguir claramente reserva do ambiente e percurso público.
Manifestos de build local principal e QA instalada são diferentes; app.tsx/layout AuthSimple iguais, login.tsx difere no reaproveitamento do email. O ecrã local já aberto conserva título Laravel e rodapé anterior; não foi recarregada ou alterada a base local activa. Comparação visual por composição/configuração/sessão continua aberta. Nenhuma correcção adicional de código foi incluída silenciosamente no pacote. Prova: RETOMADA-AUTH-VISUAL-QA.json na mesma pasta do recibo; sem novo backlog.
Consulta pública e coerência visual em QA — b0fdd083ca56, 20/10/2026
Origem: pedido expresso da Tempo de 20/10/2026. A reserva do ambiente permanece obrigatória; a dependência de uma identidade do portal para qualquer consulta era escolha de implementação. O middleware global confundia ambas. Modo perimeter preparado e demonstrado apenas no QA loopback: autorização do ambiente pelo servidor, consulta pública sem conta e autenticação nas operações identificadas. Ausência de autorização e cabeçalho HTTP forjado recusados. O modo reviewers continua como valor predefinido compatível até configurar uma reserva independente no destino por decisão expressa. Não basta activar a flag nem aceitar um cabeçalho do cliente.
Base visual: composição aprovada 3fd1f15bd01c, preservando início, navegação, editorial e rodapé. Builds diferentes e conteúdo/configuração em execução explicam a divergência observada com o local; não se copiou .env ou segredos. Login/registo ainda continham textos ingleses e logótipo Laravel. QA utiliza a marca Tempo existente, textos portugueses, formulário sem salto de foco e aviso da reserva. A ligação de entrada na ficha pública passa pelo fluxo existente /participar/entrar, conservando URL/contexto.
Provas: 13 fronteiras de acesso e seis verificações adicionais passaram; TypeScript e build com código 0. No navegador: consulta anónima → rascunho sintético → autenticação → mesma oportunidade, nome, país, sector e mensagem recuperados. Paragem antes do envio final; zero manifestações desta conta. Registo normal por HTTP em QA, sem confirmação artificial de email/MFA e sem email externo. Gestão privada continua protegida; a conta de participação não recebe permissões administrativas. Imagens antes/depois de início, login e registo guardadas no mesmo conjunto de provas. Não repetir importação, recibos completos, scans ou restauros.
Revisão QA b0fdd083ca56: 10 fontes e 177 ficheiros de build no manifesto MANIFESTO-PUBLICO-VISUAL-QA.json; pacote sem ambiente, chaves, actores, dados ou harness. QA: http://127.0.0.1:18561/ ; /oportunidades ; /login ; /register. Só acessível nesta máquina. Homologação remota mantém 312965f2c653; não instalada esta correcção e nenhuma abertura externa. Para futura disponibilização será necessário definir e conferir o perímetro independente, antes de activar perimeter. Oito lacunas contratuais, vínculo documental positivo ao dossier e P7 separados. Reversão desta preparação: restaurar as dez fontes/build anteriores e manter o modo reservado anterior; nenhum schema ou dado de negócio alterado por este delta.
Proposta consolidada após reconciliação dos programadores — 423bd512d8c5, 20/10/2026
Preservada b0fdd083ca56 integralmente por hash, sem a renomear nem substituir. É revisão de conteúdo do pacote, não commit Git. Origin/main foi consultado nesta passagem: 507387502c, com dois commits posteriores ao HEAD local a128c5a1. A nova composição mantém a aplicação aprovada 3fd1f15bd01c/312965 e acrescenta 97a08df2 (cabeçalho/menu responsivo, institucional/contacto, rodapé e formulário) e 50738750 (compilação/carregamento diferido dos exportadores). As alterações de 14ad2f60, cb438b2b, becb211f e 9bc450e8 já estavam incorporadas na base e foram conservadas. 6e57d1f6 e a128c5a1 são documentação/reconciliação, não implementação de autenticação.
Inventário: 760 ficheiros runtime do Git presentes, 677 exactos após normalizar finais de linha e 83 sobreposições QA enumeradas. Presença não comprova funcionamento de todos os componentes. Cinco conflitos de composição resolvidos; preservados menus novos, editorial, email institucional configurável, acesso/contexto e corpo dos exportadores aceites. A refactorização dos programadores só deslocou o corpo de geração; foi conservada com o corpo QA aceite. Ferramentas de arranque local e respectivo comando/composer dev-check não precisam de instalação no servidor. Não aplicar checkout/reset/pull nem substituir uma árvore inteira.
Identidade: a expressão anterior «marca Tempo» referia o logótipo da proprietária usado na autenticação, não autorização para mudar a identidade do produto. A composição agora identifica explicitamente InvesteMoz, propriedade da Tempo, Lda.; reutiliza o logótipo existente apenas para a proprietária. Não foi inventado outro logótipo de produto nem substituído um exemplar aprovado. Não foi localizado outro logótipo InvesteMoz entre os recursos públicos do repositório.
Reserva exacta: Nginx HTTPS com auth_basic independente, ficheiro protegido /etc/nginx/private/investmoz-homologation.htpasswd, snippet nominal e marcador FastCGI INVESTMOZ_HOMOLOGATION_ACCESS=granted só após autorização do ambiente. INV...HOMOLOGATION_ONLY=true mantido e ACCESS_MODE=perimeter. Document root /var/www/html/teste-investidor.tempo.co.mz/public, socket /run/php/php8.4-fpm.sock, vhost /etc/nginx/sites-available/teste-investidor.tempo.co.mz.conf. Configuração completa e hashes no pacote. /deploy e assets igualmente reservados; compatibilizar o cliente dos programadores antes da troca. Credenciais independentes por revisor autorizado, transmitidas por via protegida, sem reutilizar palavras-passe do portal ou alterar papéis/MFA.
Novas provas: oito casos HTTPS/Nginx/PHP-FastCGI passaram (401 sem autorização, 200 para convidado do portal autorizado no ambiente, 302 na operação privada), três passos da reversão da reserva e quatro casos do contacto com transporte simulado. Navegador: abrir/fechar/Escape do menu, navegação para contacto, erro do formulário e identidade em início/login/registo. Build/TypeScript passaram. Reutilizadas as 19 provas b0 e anteriores; sem nova importação, publicação, scan ou restauro. Clone Windows não comprova por si a instalação Linux. Última evidência remota continua a captura aceite de 20/10/2026; tentativa SSH desta passagem não autenticou (verificação da chave do host), sem ignorar essa verificação. Preflight fresco obrigatório antes da execução, com comparação também dos fontes que alimentam o build e detecção de ficheiros adicionais. Qualquer divergência bloqueia a troca e deve ser reconciliada.
Proposta única 423bd512d8c5: 40 fontes/recursos estáticos e 187 ficheiros de build, configurações e preflight somente leitura; zero migrations/importação/publicação. Reversão deste delta por ficheiro/hash e sequência da reserva, mantendo as 56 fontes compatíveis e dados introduzidos por 312965 e posteriores. Não é reposição integral da aplicação; não repor dump antigo. Oito lacunas contratuais, vínculo positivo ao dossier, geometrias e P7 separados. Estimativa operacional 90–150 minutos com preflight limpo e credenciais prontas, sem desenvolvimento das modalidades pendentes. Sem alterações remotas nesta passagem.
Preflight SSH e compatibilidade da reserva — 20/10/2026
Revisão 423bd512d8c5 preservada, ZIP SHA256 43b68aaf44daec2db0251f43a8ae254f038fbc0bb0157839327190f578d5d1af. Esta leitura substitui a limitação SSH do registo anterior: 669 verificações do preflight exacto passaram, incluindo 665 entradas de fontes; 125 ficheiros de dependências/base adicionais coincidem com a base aceite. HEAD remoto 9bc450e8; origin/main permanece 50738750. Build servido e vhost coincidem com as pré-condições do manifesto. Não apareceu conflito novo de código dos programadores.
Preservar um comando adicional de diagnóstico idêntico à base aceite, 149 auxiliares gerados (11 diferenças de comentários e três auxiliares antigos sem algumas rotas; nenhuma operação nova desconhecida) e 566 recursos adicionais do build. Não apagar nem regenerar no servidor. A aplicação recebe o build QA já aceite, não uma compilação remota.
Compatibilidade /deploy: ensaio isolado com o webhook efectivo confirmou 401 com HMAC válido mas sem credencial ambiental; 403 com credencial ambiental e HMAC inválido; 202 com ambos válidos, despacho interceptado, zero comandos reais e zero chamadas remotas. Nginx QA reposto. Não repetir as provas funcionais aceites.
O script remoto já recusa árvore Git alterada antes de fetch/reset/migrations; o estado failed resulta dessa guarda. A primeira leitura por palavras-chave sobre reset era incompleta: nenhuma guarda nova é necessária. Conservar script/serviço/HMAC. Não chamar /deploy para instalar esta revisão: o fluxo genérico inclui migrations automáticas, fora deste manifesto nominal de zero migrations.
Execução proposta: após decisão, backup fresco consistente; criar credenciais ambientais por via protegida; configurar no webhook Gitea existente Authorization Header = Basic <base64(utilizador:segredo ambiental)> ANTES de ligar a reserva, sem mudar URL/eventos/ramo/Secret HMAC; conferir novamente as pré-condições; aplicar nominalmente 40 fontes/recursos e 187 ficheiros de build; configuração Nginx exacta com /deploy igualmente reservado. Não usar Test Delivery ou push para testar, pois pode disparar o deploy genérico. O cabeçalho é configuração operacional, não credencial de conta do portal, e não entra em chat, URL ou recibo.
Avaliadores introduzem credencial ambiental e navegam no conteúdo público sem conta InvesteMoz. Operações identificadas continuam a exigir login/políticas/MFA aplicáveis. A futura abertura pública retirará a reserva por decisão própria, sem retirar a protecção privada ou a assinatura/guarda de /deploy. Identidade preservada: InvesteMoz, propriedade da Tempo, Lda.
Reversão: repor selectivamente o delta por hash e a reserva anterior, e só depois o cabeçalho anterior do cliente, sem alterar o Secret HMAC. Preservar alterações posteriores, 56 fontes compatíveis, dados, relações, definições e assets. Não é reposição integral da aplicação nem restauro de dump. Nenhuma alteração remota efectuada. Execução continua sujeita à decisão da Tempo; estimativa operacional 90–150 min com acessos prontos, excluindo esperas/divergências. Oito lacunas contratuais, vínculo documental legítimo, geometrias e P7 separados.
Provas: RECIBO-PREFLIGHT-423bd512d8c5.json, PREFLIGHT-EXACTO-423bd512d8c5.json e PROVA-COMPATIBILIDADE-DEPLOY-QA.json na pasta da mesma proposta. O manifesto/ZIP congelados não foram alterados; este recibo actualiza o preflight e a ordem operacional.
Execução autorizada 423bd512d8c5 — acesso pendente em 20/10/2026
A Tempo autorizou a execução nominal e a reserva independente. O preflight fresco passou (669 verificações). Staging protegido contém as mesmas 40 fontes/recursos e 187 ficheiros de build, sem alterar o ZIP. Dois hashes APR1 ambientais preparados em staging, sem activar a reserva. Credencial de Nala preparada em ficheiro local privado, restrito ao titular Windows/SYSTEM; nenhum valor em relatórios ou repositório.
Impedimento: o Gitea recusa a autenticação e o Authorization Header do webhook existente ainda não foi configurado. Não activar a reserva antes desta dependência. Pedido de autenticação/configuração local pendente; não falta nova autorização. Aplicação anterior preservada, sem manutenção, instalação, backup consistente iniciado, migrations, importação ou publicação. Retomar com acesso Gitea, backup fresco consistente e execução nominal já autorizada. Provas de consulta sem conta, conta simples e retoma por realizar após instalação. Disponibilização automática por Git não implementada e separada. Estado: ESTADO-EXECUCAO-AUTORIZADA-423.json na pasta da mesma proposta.
Disponibilização nominal 423bd512d8c5 — 20/10/2026
Executada exclusivamente na homologação reservada por autorização expressa da Tempo. Gitea: utilizador confirmou gravação do Authorization Header; presença Basic e Secret HMAC conferida sem expor valores. Não foi chamado /deploy, Test Delivery ou fluxo Git genérico. Disponibilização automática por Git não implementada e separada.
Backup fresco consistente concluído: manutenção HTTP, fila suspensa, bloqueios SHARE nas 171 tabelas públicas, hashes dos ficheiros estáveis antes/depois. Seis artefactos cifrados e conferidos: base, ficheiros privados/públicos de armazenamento e configuração/chaves da aplicação, fontes/build, configuração de servidor, ACL Linux e metadados. Envelope portátil de recuperação existente preservado, independente do perfil Windows; proprietário/grupo/permissões/ACL/xattrs registados. Não repetido o restauro integral aceite. Cópia anterior do delta e diário de hashes sob custódia root no destino.
Aplicadas 40 fontes/recursos e 187 ficheiros de build, exactamente pelos hashes do pacote congelado. Manifesto efectivamente servido: 41e9bdbf13dcd95865eefa8af25e2b1e40a5c607d293ad4755152dcea83f9d5d. HEAD Git permanece 9bc450e8 e não identifica sozinho a composição servida. Restantes fontes, comando adicional, 149 auxiliares gerados e todos os assets anteriores não substituídos pelo manifesto preservados (741 ficheiros antigos inventariados, zero perdas/alterações imprevistas). Vhost/snippet correspondem aos bytes do pacote; apenas cinco chaves nominais alteradas; restantes valores .env e proprietário/permissões preservados. Nginx validado antes de reload; PHP-FPM/scanner/base não reiniciados. Manutenção terminada e fila no estado anterior activo. Migrations registadas 88 antes/depois; zero migrations, importação, publicação, alterações de contas/grants/MFA.
13 verificações HTTPS do delta passaram: sem credencial ambiental, início/documentos/build e /deploy recusados (401); com credencial ambiental e sem conta do portal, início, documentos, oportunidades, sobre e contacto 200; áreas privadas redireccionam para login; manifesto HTTP igual ao instalado. Navegador: utilizador concluiu a entrada ambiental; início e os 29 documentos abrem com Entrar visível, sem conta InvesteMoz; Continuar no meu Balcão redireccionou para login. Retoma após login real e consulta com conta simples aguardam a sessão apropriada; não certificar esses dois passos pela prova anónima. Sem actores sintéticos ou impersonação no destino.
Credencial ambiental entregue por ficheiro local privado, restrito ao titular Windows/SYSTEM; não consta do repositório, Page ou recibos. Abertura pública continua separada e retirará a reserva por decisão própria, mantendo protecções privadas e /deploy.
Reversão aprovada: modo reviewers enquanto reserva independente permanece; repor selectivamente apresentação/rotas e configuração deste delta apenas se os hashes ainda coincidirem; preservar alterações posteriores; só depois repor reserva/cabeçalho anteriores. Manter 56 fontes compatíveis, dados/relações/definições e assets posteriores. Não é reposição integral nem restauro de dump. Oito lacunas contratuais, dossier legítimo, geometrias, P7 e automatização Git separados. Instalação concluída; saldo desta execução: 15–30 min de verificação com sessão real adequada, excluindo esperas; nenhum novo desenvolvimento incluído. Provas e recibo: RECIBO-EXECUCAO-423bd512d8c5.json e PROVA-HTTP/CONFIGURACAO/PRESERVACAO-DESTINO-423.json na mesma pasta da proposta.
Conferência da sessão real 423bd512d8c5 — 20/10/2026
Depois da entrada ambiental, o navegador apresentou início e biblioteca com 29 documentos sem conta do portal. Continuar no meu Balcão conduziu a /login. O titular concluiu a autenticação real e regressou automaticamente a /balcao-virtual/painel, com o título Balcão Virtual — acompanhamento e conta visível Osmane Nala. A página inicial voltou a abrir nessa sessão autenticada, sem pedir nova credencial. Esta evidência encerra a retoma no delta; não é prova de uma conta simples, pois a conta usada tem funções já autorizadas.
Não pedir novas contas para encerrar a instalação nem certificar a conta simples sem a observar. Única conferência específica restante deste recorte: consulta com uma conta simples real adequada, 5–10 min quando disponível, excluindo esperas. Não houve criação de conta, impersonação ou alteração de MFA/grants. Credencial ambiental, conta InvesteMoz e conta Gitea são independentes; para o trabalho corrente no portal, usar nala@tempo.co.mz. Não voltar a pedir autenticação nesta passagem.
Os seis directórios novos da instalação foram alinhados com o proprietário do repositório (mario:www-data, 0755), comprovadamente ausentes no arquivo fresco; permissões dos directórios existentes intactas. Sem alteração do pacote ou revisão. A sessão SSH encerrou pelo limite anterior; não foi reaberta apenas para actualizar o diário operacional remoto. Recibo final e provas actualizados localmente e na mesma Page. Revisão efectivamente servida continua 423bd512d8c5. Git automático, oito lacunas contratuais, dossier legítimo, geometrias e P7 separados.
Consulta pública sem autenticação ambiental — 20/10/2026
Decisão expressa da Tempo: retirar a autenticação ambiental das páginas públicas, preservando login, permissões e MFA das operações privadas e a protecção própria de /deploy. Esta decisão substitui a exigência de credencial ambiental para consultar os conteúdos públicos nesta homologação; não publica novos conteúdos nem altera contas ou funções.
Executado apenas o delta de configuração: removida a reserva Basic global do vhost; Basic mantido explicitamente na localização exacta /deploy com o mesmo htpasswd, e HMAC/Secret/cabeçalho Gitea preservados. Mantidos noindex/nofollow/noarchive e private/no-store no Nginx. INVESTMOZ_HOMOLOGATION_ONLY=false desactiva a reserva global do portal e a indicação desactualizada de ambiente reservado. O modo anterior permanece configurado mas inactivo para eventual reversão; marcador FastCGI de acesso ambiental retirado. Nenhuma alteração de código/build: revisão servida 423bd512d8c5, manifesto SHA256 41e9bdbf13dcd95865eefa8af25e2b1e40a5c607d293ad4755152dcea83f9d5d. Apenas reload Nginx após nginx -t; sem manutenção, migrations, imports, publicação ou reinício de base/fila/scanner.
Backup fresco apenas da configuração alterada, com hashes revalidados e metadados Linux, cifrado sob a custódia e envelope portátil existentes. Valores secretos não constam dos recibos. Cópias anteriores root-only no destino. Reversão: restaurar primeiro o vhost anterior condicionado aos hashes, validar/recarregar para repor a barreira ambiental; depois repor a flag anterior com conferência de conflitos/cache. Preservar edições posteriores e dados; não restaurar base antiga nem build.
16 verificações HTTPS passaram com CookieJar novo e sem Authorization na consulta: início, pesquisa /oportunidades?q=agronegocio (termo recuperado), documentos, ficha pública /documentos/13, artigo /agronegocio, sobre e contacto respondem 200, com componentes públicos e utilizador do portal ausente. Seis áreas privadas (/management/portal-services, /management/profile-install, /minhas-oportunidades, /investimentos, /investidor/manifestacoes e /balcao-virtual/painel) redireccionam para o login do portal sem desafio ambiental. /deploy continua 401 sem Basic e 403 com Basic válido mas HMAC inválido em JSON válido; serviço de deploy não disparado. Uma primeira sondagem com corpo vazio produziu 400 (JSON inválido); corrigida somente a sondagem negativa, sem alterar a aplicação ou repetir as restantes provas aceites.
A ausência do bloqueio é distinta de apenas esconder uma caixa do navegador: os componentes públicos efectivamente renderizam sem formulário de login e a pesquisa conserva o termo. Login num formulário InvesteMoz continua correcto nas operações privadas; se surgir na consulta pública, é falha a registar. Conferência visual em janela InPrivate nova solicitada ao utilizador, ainda pendente neste registo. Não declarar concluída essa parte pela prova HTTP isolada.
Recibo: RECIBO-CONFIGURACAO-PUBLICA-20261020.json; prova: PROVA-CONSULTA-SEM-CREDENCIAL-20261020.json, na pasta da mesma proposta. Oito lacunas contratuais, conta simples específica, dossier legítimo, geometrias, P7 e disponibilização automática por Git continuam separados. Não houve novas contas, concessões, desactivação de MFA ou publicação adicional.
Fecho da consulta pública sem credencial — 20/10/2026
O utilizador confirmou em janela Edge InPrivate nova: início, pesquisa /oportunidades?q=agronegocio e documentos abrem sem qualquer pedido de credenciais («ja funciona nestes 3»). Confirmação visual manual, distinta da prova automática HTTPS. A prova automática foi alargada apenas aos três consumidores adicionais afectados — zonas, sector Turismo e legislação — e passou em 19 verificações totais. Não repetidos scans, restauros, importações ou percursos anteriores.
Este delta de configuração fica concluído. Consulta pública não requer credencial ambiental nem conta InvesteMoz; seis operações privadas verificadas continuam a pedir login do portal, com permissões/MFA inalterados. /deploy conserva Basic + HMAC, com recusas 401/403 comprovadas e sem disparar o serviço. Prova de limites confirma que apenas /deploy contém Basic, o antigo include global e marcador FastCGI foram removidos, outros valores .env e proprietário/permissões estão intactos, webhook inalterado. Revisão de código/build continua 423bd512d8c5. Documentação anterior que exige credencial para a consulta pública fica superada por esta decisão expressa da Tempo.
Recibo e prova finais: RECIBO-CONFIGURACAO-PUBLICA-20261020.json e PROVA-CONSULTA-SEM-CREDENCIAL-20261020.json. Sem pendência neste recorte. Conta simples específica, oito lacunas contratuais, dossier legítimo, geometrias, P7 e automatização Git mantêm os saldos separados anteriores. Não se declara a aplicação inteira concluída por este ajuste.
Git main automático — 20/10/2026 — 8cf820ef
Disponibilização automática activa em main; revisão servida 8cf820ef49. Push real recebido pelo webhook às 17:28:44 e instalado às 17:29:56 (Maputo), sem despacho manual. Preservadas composição 423bd512d8c5 e alterações dos programadores até 02d4e6b2; conflito do menu resolvido mantendo layout novo, identidade InvesteMoz e administração delimitada. Build, TypeScript, 47 testes PHP, 156 frontend e 3106 asserções de schema passaram; nove testes Linux do executor e ensaio do webhook também passaram. Demonstração visual: Consultar oportunidades. 171 tabelas e 88 migrations permanecem; zero migrations no destino, importações, publicação ou novos grants. .env com bytes/proprietário/modo intactos; armazenamento partilhado e 869 assets anteriores preservados. Consulta pública 200 sem credenciais, gestão 302 para login e /deploy 401 sem Basic. Fila serial, recusa de drift e de alterações de migrations, releases separadas, logs/recibos protegidos e reversão de código/build com dados posteriores conservados. Oito lacunas contratuais, dossier legítimo, geometrias, conta simples específica e P7 mantêm saldo separado.
Procedimento dos programadores: trabalhar numa branch, rever segundo as designações da Tempo e integrar em main. O webhook existente dispara a verificação e compilação da revisão completa. Confirmar o commit em https://teste-investidor.tempo.co.mz/build/revision.json. Uma falha conserva a versão servida e deixa recibo/log protegido; não editar a pasta servida para a contornar.
O executor genérico com migrations automáticas foi substituído. O contrato nominal de 88 fontes de migrations fica protegido fora do Git; uma alteração exige compatibilidade/decisão específica. A CI usa PostGIS oficial fixado por digest, apenas em loopback 55441, base descartável *_test e identidade conferida. Não usa contas ou dados da aplicação. A guarda nominal e os testes de lifecycle existentes são preservados; não se contornam as instalações autenticadas.
Recuperação: parar a path unit, aguardar o executor e usar python3 /var/www/deploy/investmoz-pipeline.py --config /etc/investmoz-deploy/delivery.json --rollback como operador existente. Conferem-se hashes e saúde; a release anterior fica servida e o worker recebe reinício gracioso. Mantêm-se base, uploads, configuração e dados posteriores. Não é restauro integral. O checkout físico anterior e a cópia cifrada de configuração/metadados Linux permanecem disponíveis; a recuperação portátil existente foi reutilizada. Não foi repetido o restauro integral aceite.
As correcções do ensaio limitaram-se à composição: diagnóstico mais recente dos programadores, teste de exemplo sem migração inútil, fixtures unitárias independentes das flags do destino, expectativas dos menus/relatórios já aceites e guarda do cookie fora do navegador, com prova de CSRF preservado. Nenhuma nova regra organizacional.
Provas: outputs/investmoz-git-delivery-20261020/RECIBO-DISPONIBILIZACAO-GIT-MAIN.json; PROVA-ENSAIO-COMPLETO.json; PROVA-CONTROLO-FINAL-LINUX.json; PROVA-GITEA-EVENTO-E-INSTALACAO.json; PROVA-VISUAL-GIT-MAIN.png; deploy/homologacao/README.md; /build/revision.json. Manual versionado: deploy/homologacao/README.md. Esta entrega encerra o fluxo automático, não os restantes componentes da aplicação. As alterações documentais anteriores no checkout local foram preservadas.
Pesquisa transversal QA — 20/10/2026
Origem: instruções expressas da Tempo nesta conversa. A classificação multidimensional, dados, permissões, histórico e URLs mantêm-se. Os ajustes de interface/consulta são implementação do pedido, não novas regras organizacionais. Branch codex/opportunity-search, base 1350b4df, QA HTTP http://127.0.0.1:18570. Não integrar em main antes da revisão: a integração desencadeia disponibilização automática.
Causa reproduzida de 11 versus 0: em /oportunidades?sector=turismo no destino, o selector provincial apresentava 11 opções através de SearchState como “11 resultados encontrados”, enquanto o paginador devolvia zero oportunidades públicas. São universos diferentes. Agora o primeiro diz “Província: 11 opções disponíveis”; o catálogo usa apenas o total do seu paginador. Não foram alterados dados para obter concordância. Foram ainda retirados o resumo global duplicado desta página, sugestões com critérios incompletos e resultados de parcerias que tinham pesquisa própria.
| Ecrã/URL | Problema | Correcção | Prova | Pendência/limite |
|---|---|---|---|---|
| Oportunidades — /oportunidades | Filtros duplicados, códigos internos, maturidades cruzadas, contagens concorrentes e mapa em grelha. | Filtro único, Mais filtros, preparação explícita, moeda obrigatória para montantes, pedidos canceláveis, estados e contexto únicos. | 6 testes PHP/112 asserções; navegador: parque, erro/repetição, moeda, vazio, retorno, hierarquia e teclado. | Revisão visual da Tempo; NLP separado. |
| Negócios — /negocios | Classificação técnica visível, estados de auditoria e contagem territorial sem âmbito. | Sector básico, critérios especializados recolhidos em Mais filtros, estado de auditoria retirado do controlo público, contagem identificada e filtros removíveis. | HTTP/Inertia: universo results.meta.total=0; selector partilhado e código inspeccionados. | Nenhum contrato foi habilitado; oito lacunas contratuais mantidas fora deste lote. |
| Sectores — /sectores; /sectores/{slug} | Navegação relacionada dispersa e contagens genéricas sem nome do universo. | Contagem identificada como Sectores; navegação comum preserva a entrada por sector e Fintech como especialização. | Inspecção de PublicPortalController, SectorOrganization e portalNavigation; testes de navegação. | Sem pesquisa autónoma no catálogo de sectores: não foi inventado um novo filtro. |
| Localizações — /oportunidades?view=map | Mapa e contagem de oportunidades podiam usar universos diferentes sem explicação. | Mesmos filtros e permissões; locais com coordenadas e oportunidades sem coordenadas apresentados separadamente; fichas de contexto identificadas. | Teste de associação/lista/exportação; mapa do serviço exclui proximidade e preserva oportunidade sem coordenadas. | Nenhuma coordenada ou geometria criada. |
| Carteira — /carteira | Menu local repetido, ausência de retorno explícito e de distinção entre ficha e pesquisa associada. | Contagem Fichas da carteira, chips removíveis, menu local redundante retirado, Consultar ficha e Ver oportunidades associadas; retorno com query local. | HTTP/Inertia de vazio; navegador de vazio; teste de contexto e navegação. | Provas anteriores de edição/publicação conservadas; não repetidas. |
| Zonas e parques — /zonas; /zonas/{id} | Destinos repetidos, vazio atribuído indevidamente a falta de cadastro, retorno sem filtros. | Destinos relacionados recolhidos; vazio neutro; consultar ficha separado de oportunidades associadas; retorno e exportação preservam filtros. | HTTP/Inertia de vazio; inspecção da query/exportação e helpers de retorno. | Disponibilidade/incentivos continuam sujeitos aos dados de cada ficha. |
| Clusters — /clusters → /carteira?kind=cluster | Mesmo padrão da carteira; não é um catálogo independente de oportunidades. | Reutiliza carteira, contagem nomeada e tipo de ficha removível; URL anterior preservada. | Redireccionamento verificado no teste PHP; consumidor comum inspeccionado. | Nenhuma equivalência entre implantação e associação criada. |
| Corredores — /corredores → /carteira?kind=corridor | Mesmo padrão da carteira e risco de confundir ficha territorial com oportunidade. | Reutiliza carteira e ligações com finalidade explícita; URL anterior preservada. | Redireccionamento verificado no teste PHP; consumidor comum inspeccionado. | Nenhuma alteração de relações ou dados. |
| Educação — /educacao | Herda formulário e contagens concorrentes das oportunidades. | Reutiliza integralmente a pesquisa corrigida com âmbito educação mantido. | HTTP/Inertia: results.total=0 com texto inexistente; filtros e componente comuns. | Gestão de procura/capacidade permanece separada e protegida; sem alteração de permissões. |
| Biblioteca — /documentos | Dois resumos de contagem, filtros activos sem remoção individual, controlos sem opções e rodapé local repetido. | Resumo único nomeado Documentos, chips removíveis, controlos vazios ocultos sem apagar valores seleccionados, rodapé comum. | HTTP/Inertia e navegador: vazio e termos preservados; retorno documental existente conservado. | Não houve importação/publicação; a cópia QA usada não contém recursos públicos reais para nova prova positiva. |
| Legislação — /legislacao | Mesmo padrão da biblioteca; não deve expor um universo concorrente. | Reutiliza a correcção da biblioteca e preserva filtros jurídicos/documentais pertinentes. | HTTP/Inertia: resources.total=0; consumidor e query pública partilhados. | Situação jurídica, consulta e cálculo continuam independentes. |
Utilização
- Em oportunidades, preencher palavras, sector, modalidade e localização até ao nível conhecido. Usar “Mais filtros” para estruturas, actividades e cadeias. As opções territoriais não são a contagem das oportunidades.
- Para limites financeiros, escolher a moeda. Sem moeda, a pesquisa pede esse campo; não assume MZN nem converte montantes. Preparação tem etapas actuais e classificações históricas separadas.
- Retirar um critério pelo seu botão/ligação ou usar “Limpar filtros”. Alterar o pai territorial limpa os descendentes incompatíveis. Abrir a ficha e usar “Voltar à pesquisa” recupera os critérios.
- “Consultar ficha” consulta a estrutura territorial/documental; “Ver oportunidades associadas” pesquisa vínculos publicados. Proximidade ou o mesmo distrito não demonstram pertença. No mapa, registos sem coordenadas continuam identificados na lista, sem posições inventadas.
- Durante o pedido aparece “A pesquisar…”. Um erro apresenta “Tentar novamente” e preserva critérios; não aparece como resultado vazio. Pedidos anteriores são cancelados/ignorados ao mudar os filtros. Os estados têm
status/alertearia-live.
Compatibilidade e provas
- A pesquisa antiga
maturity_level=1..6conserva a classificação histórica, sem misturar a posição com a etapa actual. As posições 7/8, exclusivas das oito etapas, correspondem explicitamente a implementação/operacional. Novas selecções usam código de etapa ou classificação histórica explícita, sem reescrever os registos. - Balama real, ID
ed4d2fba-95d5-42e3-8ca7-1f520de1036a: leitura pública do destino devolveu zero oportunidades associadas. Na cópia QA, essa ficha real está em rascunho; não foi publicada. A prova positiva usa um parque e oportunidades SINTÉTICO QA, incluindo associação preliminar, proximidade, território comum, outro parque e rascunho privado. Só a associação pública correspondente entra no filtro. - QA isolado
opportunity_search_20261020_test, PostgreSQL local porta 55441; guarda impede testes na base activa. Testes transaccionais revertem apenas fixtures próprias; não foi executadomigrate:fresh. - Seis testes PHP, 112 asserções: associação, confidencialidade, modalidades, maturidades distintas, moeda/combinações/vazio, referências, lista/exportação e HTTP dos consumidores/aliases. Seis testes frontend: navegação, flags, destinos únicos, quatro entradas e retorno local com query. Build e TypeScript conferidos no recibo final.
- Navegador: consulta → ficha → retorno; parque isolado; validação de moeda → vazio; falha HTTP sintética de um único pedido → nova tentativa bem-sucedida; Inhambane/Vilankulo → Gaza limpa distrito e postos. A falha existe apenas no router privado do servidor QA, fora do pacote.
- Móvel: dimensão real 390 px, largura de conteúdo 375 px, sem transbordo horizontal; teclado abre/fecha Mais filtros e Descoberta. A capacidade automática de viewport não aplicou a dimensão; a prova utilizou o modo responsivo do navegador. Não se atribui essa limitação à aplicação.
- Antes/depois e estados: artefactos locais
opportunity-search-artifacts/{before-search.png,before-search-ax.txt,qa-after.png,qa-mobile.png,qa-error.png,qa-zero.png,backend-tests.log}. As capturas do destino e QA usam acervos diferentes; os totais entre ambientes não são uma comparação de dados. - Inventário de reutilização de
investment-territory.tsx: oportunidades, negócios, carteira, zonas, educação, análise educativa, formulário/recursos/editor de oportunidades, estruturas, associações territoriais, contexto do investimento, pedido do Balcão, terra/DUAT, formulários públicos e assistência existente. A alteração comum identifica o âmbito da contagem; não demonstra de novo edição/autorização desses consumidores privados.CountrySelecttambém identifica Países;InvestmentMapPanelidentifica o universo cartográfico. - “Catatálogo” não foi encontrado nas fontes actuais inspeccionadas. O título servido usa “Catálogo”. O menu local redundante da carteira que exibia “InvestMoz” foi retirado; a identidade comum continua InvesteMoz, propriedade da Tempo.
Assistência à pesquisa — saldo separado
config/investmoz_ai.php, AiGateway e AssistiveRules mostram pesquisa lexical/evidências e regras sobre campos estruturados, com model=null, sem pesquisa semântica. Não interpretam a frase “turismo em Inhambane até 500 mil USD” como filtros. evidence_only não comprova NLP. Nenhum serviço externo, custo ou envio de dados foi activado.
Incremento ainda necessário: interpretação delimitada de palavras/sector/geografia/montante/moeda; prévia editável dos filtros; pergunta apenas quando ambíguo; confirmação antes de executar exactamente a query manual; ausência de resultados sem alargamento silencioso. Estimativa de engenharia: 6–10 h para um interpretador local delimitado e casos de ambiguidade/testes; compreensão aberta com modelo externo exige proposta e decisão próprias. Esta estimativa não inclui as oito lacunas contratuais nem P7 e não bloqueia as correcções manuais.
Integração e reversão
Rever a branch e o manifesto nominal; reconciliar novos commits dos programadores antes da integração. Após decisão da Tempo, a cadeia Git existente compila a revisão aprovada de fontes e build. Esta execução não envia para main, não escreve no servidor e não altera conteúdos, schema, contas, papéis, MFA ou configuração.
Não há migrations, importação ou publicação neste pacote. A reversão repõe as fontes/build da revisão anterior através da cadeia existente, preservando a base, uploads, referências, permissões e dados posteriores. Os helpers de contexto só transportam query local; não aceitam URL externa como destino de retorno. O manifesto lista fontes e hash do build QA; não inclui .env, credenciais, dumps, vendor/node_modules ou fixtures persistentes.
Conferência final dos consumidores: negócios também conferido no navegador com pesquisa vazia; retirado o resumo local repetido, conservando o resumo partilhado. Fintech é identificado como especialização do Mercado Financeiro também nesse selector. Os cartões de zonas traduzem categoria, desenvolvimento, disponibilidade e estado de actividade, preservando os códigos e significados persistidos. A vista combinada não repete na lista de não localizados a ficha que já aparece na lista principal.
Guias educativos relacionados — 20/10/2026
Delta independente de 0e7d51f18fb4, que já foi integrado e confirmado na homologação. Este incremento permanece na branch codex/educational-content-cards, em QA, sujeito a revisão própria. Origem: pedido expresso da Tempo; nenhuma nova regra organizacional.
O componente EducationalArticleCard usa imagem pública autorizada, título original, resumo da edição apresentada, autoria e «Ler o guia». Turismo descreve hotelaria, ecoturismo, infraestruturas e referências regionais presentes no artigo, sem repetir metas financeiras como promessa. Outros artigos usam um excerto do texto efectivo. A apresentação não altera originais, fontes, autoria, direitos, versões, publicação ou scan. A imagem continua sujeita aos filtros públicos existentes. A acção secundária só surge quando a consulta de oportunidades públicas do sector tem resultados; não se infere disponibilidade por menção no artigo.
Consumidores: sector (SectorEntry), exploração editorial e leituras relacionadas (portal/legacy), catálogo de oportunidades com sector explícito (incluindo vista territorial/mapa) e ficha de oportunidade com sector. Um filtro de localização sem sector não determina um artigo; não se inventaram associações territoriais. Nos restantes catálogos territoriais não foi encontrado um cartão editorial equivalente a substituir. Não se alteraram cartões de anúncios, documentos ou entidades que não sejam recomendações de artigos.
Após a leitura, mantém-se «Iniciar ou continuar uma ideia», com /investimentos/a-partir-de/{slug} e o contexto autorizado do dossier quando existente. Não há novo percurso, conta ou privilégio. As provas anteriores de gravação documental mantêm-se; não foram repetidas.
Provas novas: EducationalGuidesTest, isolado por guarda QA, transacções e armazenamento fictício do teste, 1 teste / 8 asserções (excerto, autoria, destino, percurso, ausência de resultados, fonte não publicada e scan pendente). TypeScript, sintaxe PHP e build passaram. Capturas a 2048 px e 390 px; a 390 px, conteúdo com 375 px, sem transbordo horizontal, foco visível e Enter no botão «Ler o guia». Imagem real carregada com 900 px de largura natural. A prévia HTTP http://127.0.0.1:18570/qa/guias/turismo usa uma cópia por leitura do artigo/imagem já públicos no destino; não usa texto ou imagem sintéticos nem escreve registos. O router privado e a cópia ficam fora do Git. O destino não foi alterado.
Limitação: o artigo real não existe na base QA actual. A prévia permite conferir cartão e leitura; não comprova recuperação desse artigo num dossier autenticado nessa base. O URL original do percurso foi preservado e conferido pelo teste. Não se importaram dados ou fabricaram resultados para preencher essa lacuna. Capturas em outputs/educational-guides-20261020/desktop.jpg e mobile.jpg (ficheiros locais de prova).
Gestão: editar e publicar pelos ecrãs existentes da biblioteca/editorial; o resumo acompanha a edição apresentada. A acção de oportunidades é calculada pelos registos publicados, não pelo editor. Disponibilização futura: revisão própria e integração em main pelo processo automático, após decisão. Sem migrations, importação ou publicação neste delta. Reversão pelas fontes/build anteriores, conservando base, ficheiros, permissões e dados posteriores. IA, oito lacunas contratuais e P7 separados.
Library integration evidence supplement - 20/10/2026
Functional code remains 3258a25f76. Existing QA database legacy_trio_20261015_test and its original local storage were selected by an isolated loopback harness; no import, publication or application route override. Normal /sectores/turismo rendered the source-derived summary and image /documentos/25/view (HTTP 200; 900px natural width). Keyboard Enter on Ler o guia opened normal /turismo; the article links to library resource /documentos/10 (source SHA256 8cab862be245382dd4c1fd5fcb423c47aed7be3a22e0a7f8d5521510cc36bc72). Thus the real-library integration limitation of the earlier copied preview is resolved. URLs: http://127.0.0.1:18572/sectores/turismo and /turismo. Evidence: outputs/educational-guides-20261020/real-library-receipt.json, real-library-sector.jpg and real-library-guide.jpg. No dossier path/context change; previous accepted dossier proof retained, not repeated. Tempo visual review remains pending before main integration. AI excluded. This supplement changes evidence/documentation only, not functional code.
Revisão integrada do simulador — diagnóstico inicial, 20/10/2026
Branch codex/simulator-integrated-review, base e69ab1499fe99196db240c90d149b7ee46292576. Pedido expresso da Tempo: cálculos e isolamento primeiro; continuidade e resultados a seguir; português transversal. Apenas QA, sem regras fiscais presumidas, activação de parâmetros, alterações reais ou integração em main.
O código separa cálculo aritmético exploratório (SimulationExecution/RunSimulation, custom_planning, legal_interpretation=false, moeda não definida), resolução fiscal versionada (SimulationTaxParameterResolver, vigência/condições, estados indeterminados) e planeamento financeiro (financial-calculators, business-financial-plan, monthly-cashflow, ponte fiscal). Não os apresentar como um único motor fiscal integralmente validado. A ausência de moeda no cenário aritmético é explícita no contrato; falta conferir a explicação nos seus consumidores, não atribuir MZN por presunção.
| ID | Prioridade / problema ou verificação | Causa / evidência | Acção e prova nova necessária | Estado |
|---|---|---|---|---|
| AUD-SIM-INT01 | P0 — data fiscal inválida interrompe validação | getFiscalPeriodRange chamava toISOString sobre data inválida |
Guarda Number.isFinite; datas 2026-99-99, 2026-00-01, dia zero, 30 Fevereiro e vazio devolvem null |
Corrigido em QA; testes dirigidos passaram |
| AUD-SIM-INT02 | P0 — fiabilidade e dados fiscais | Resolutor existente conserva período, condições, unidade e versão; sem correspondência devolve valor null | Conferir acervo e parâmetros efectivos QA; cruzar casos independentes, distinguir desconhecido/zero; não activar por publicação | Verificação delimitada pendente, não erro comprovado |
| AUD-SIM-INT03 | P0 — isolamento e recuperação | Âmbito cliente por case/draft, cookies anónimos e RLS/políticas/testes existentes | Reconciliar provas recentes de contexto e conta; verificar só lacunas de nova sessão/projectos diferentes sem repetir os casos aceites | Não há fuga comprovada; verificação pendente |
| AUD-SIM-INT04 | P1 — invalidar e conservar resultados | Fingerprints e versões existentes; resultados/snapshots separados do formulário | Conferir alteração de entradas/parâmetros, histórico imutável e destino dossier correcto | Verificação pendente |
| AUD-SIM-INT05 | P1 — unidades, moeda e cálculos independentes | Aritmética SQL numeric; ferramentas com montantes exactos; falta reconciliação integral do acervo actual | Livro de controlo independente para resultados positivos/negativos/zero/incompletos, sem pressupor incentivos por localização | Verificação pendente |
| AUD-SIM-INT06 | P1 — relatórios e recuperação de exportações | Relatórios/snapshots e exportações já existem; provas anteriores em simulations/ e manual | Conferir exemplos efectivamente gerados, coerência e paginação; reutilizar exemplos aceites compatíveis | Exemplos desta revisão ainda não entregues |
| AUD-SIM-INT07 | P1 — mensagens e operações | APIs com idempotência e concorrência; mensagens e falhas por consumidor carecem de inventário final | Validar/calcular/guardar/exportar com confirmação e dados preservados; conferir erros concretos | Verificação pendente |
| AUD-SIM-INT08 | P1 — português transversal | Exportação apresentava nominal/effective; páginas de segurança e spinner em inglês | Tipo de taxa traduzido na saída, confirmação de palavra-passe/segurança e indicador de carregamento traduzidos; códigos internos preservados | Primeira correcção QA; restante inventário aberto |
Inventário de idioma observado: segurança/confirmação, perfil, reposição de palavra-passe, confirmação de email, MFA, chaves de acesso e recuperação. Pesquisa textual em menus, consumidores de investimento, gestão e componentes comuns também devolve identificadores internos; essas ocorrências são candidatos a inspecção, não erros de tradução automaticamente demonstrados. Não traduzir chaves, contratos/API, dados históricos nem nomes de fontes.
Provas reutilizáveis identificadas: SimulationExecutionTest, SimulationDraftContinuityTest, SimulationFormDraftTest, testes de regras/resolução, contratos e fingerprints frontend; relatórios e capturas docs/investmoz/simulations/ e a secção recente de apresentação no manual. Não correr RefreshDatabase em bases com acervo. As provas documentadas de Outubro antigo não certificam por si só o estado de todas as versões actuais.
Esforço inicial para este recorte: 18–30 h: dados/cálculos 6–10; isolamento/continuidade 5–8; relatórios/erros 4–7; idioma 3–5. Estimativa de engenharia, não tempo já executado nem desenvolvimento fiscal novo. Reestimar após a reconciliação das provas e parâmetros efectivos; fontes/catálogos realmente ausentes ficam separados e não impedem cálculos independentes que disponham dos dados necessários. Nenhuma nova função organizacional exigida.
Correcções iniciais verificadas: 38 testes frontend dirigidos passaram, TypeScript passou. Sem ensaio remoto, SQL de alteração, novas migrations ou mudança do motor fiscal. A revisão integral permanece aberta. Roteiro Tempo, após completar as verificações: escolher contexto → preencher/rever dados → calcular → guardar/recuperar → alterar e recalcular → comparar e exportar. Os relatórios finais e a matriz problema/causa/correcção/prova/pendência serão complementados nesta mesma secção, sem outro backlog.
Simulador integrado — saldo da verificação QA, 20/10/2026
Continuação de 59ab4fe95635, exclusivamente na branch codex/simulator-integrated-review, baseada no editorial e69ab149. Não houve integração em main, instalação remota, migrations, importação ou activação de parâmetros. A base utilizada foi opportunity_search_20261020_test, porta 55441, com guarda de isolamento. Os exemplos são sintéticos e explicitamente identificados.
| Item | Resultado e causa/correcção | Prova e saldo concreto |
|---|---|---|
| AUD-SIM-INT01 | Data pontual inválida passa a produzir erro em fiscal_reference_date, sem período alternativo. |
Testes de vazio, data impossível e ano incompatível; navegador mostrou mensagem junto ao campo, aria-invalid e descrição associada. Encerrado este delta. |
| AUD-SIM-INT02 | Inventário efectivo: zero versões de regras fiscais na base QA. As seis fontes territoriais existentes não fornecem taxas ao motor. | Consulta IVA/2026 devolveu indeterminado, nunca zero. Fórmula executada é apenas base × taxa/100 × (1−redução/100), portal-arithmetic-v1, valores declarados, sem moeda, regra fiscal ou interpretação legal. A data de execução não é período de vigência fiscal. Fontes oficiais mantêm a aceitação; não se pediu nova autenticação da proveniência. Parâmetros fiscais ausentes ficam indisponíveis, não estimados pela aplicação. |
| AUD-SIM-INT03 | Remontagem do formulário por conta/contexto/rascunho para não reutilizar estado de outro âmbito. Recuperação do rascunho QA observada após reload. | Provas backend anteriores de isolamento mantidas; falta a conferência positiva do delta frontend com dois dossiers e nova sessão autenticada. Reload não foi contado como nova sessão. |
| AUD-SIM-INT04 | Alterar uma entrada retira o resultado actual e mostra aviso de recálculo; não escreve sobre snapshots históricos. | Navegador calculou 12 e, ao alterar base 100→200, retirou o resultado e mostrou o aviso. Versões/hashes backend preservados. Falta concluir a conferência positiva do histórico/contexto no consumidor autenticado e da mudança de versão de parâmetros. |
| AUD-SIM-INT05 | Controlos independentes por livro de caixa, Decimal e recorrência mensal/bissecção para o crédito. | Saldo mensal +100/−100/0; excedente de fundos −200; equilíbrio 11 unidades; crédito sem juros 100 por mês; nominal 12%/ano, 1000/12 meses: 88,85 na primeira prestação; campo vazio recusado. Cenário personalizado 100×16%×75%=12 confirmado no servidor. São controlos matemáticos, não validação de taxas legais. Restam controlos delimitados de cash-flow/plano de negócio. |
| AUD-SIM-INT06 | Resumo do relatório passou a apresentar os resultados financeiros do mesmo modelo de detalhe. Secção sem anexos ficou compacta, eliminando uma página quase vazia. | Quatro exemplos completos pelo exportador real: positivo, negativo, nulo (6 páginas cada), incompleto (5). Todas as páginas DOCX renderizadas conferidas; testes comparam resumo/detalhe. PDF disponibilizado é a renderização do DOCX, não prova da impressão nativa do Edge. Falta essa impressão e a comparação final ecrã/download pela interface. |
| AUD-SIM-INT07 | Removidos requisitos de residência/documentação que não entram no cenário percentual personalizado; mantida validação específica de base/taxa/redução. Consulta fiscal tem nova tentativa e ignora respostas abortadas. Estado de espera é substituído pelo estado terminal do cálculo. | Cenário personalizado calculou sem esses campos; erro 503 sintético na consulta mostrou mensagem e Tentar novamente; repetição preservou IVA/2026 e devolveu indeterminado por falta de parâmetro. Falhas de gravação/exportação ainda carecem de conferência dirigida dos consumidores afectados. |
| AUD-SIM-INT08 | Traduzidos textos de autenticação, perfil, preferências, MFA/chaves, diálogos, notificações e validações comuns, preservando códigos e mecanismos. | Inventário de 4519 textos/atributos JSX literais em todos os TSX; três candidatos restantes são português com a palavra continue. Isto não cobre todas as mensagens dinâmicas do backend ou do catálogo. Inglês explicitamente seleccionável no formulário bilingue e títulos de fontes preservados. Falta classificar o inventário dinâmico e conferir mensagens residuais em execução. |
Operação de idioma para uma eventual disponibilização: usar APP_LOCALE=pt na configuração nominal. O fallback de config/app.php passou a pt, mas não substitui um valor explícito do ambiente; não copiar .env QA. Foram adicionados lang/pt/auth.php, lang/pt/validation.php e lang/pt.json; as regras comuns cobertas não equivalem ao catálogo completo de validações Laravel.
Complemento do inventário: os 77 candidatos de literais TS/TSX restantes foram classificados como classes CSS internas ou traduções explicitamente seleccionáveis (incluindo menus, formulário bilingue e assistência, cuja activação não foi alterada). Foram ainda corrigidos o breadcrumb de segurança e as três mensagens de falha no carregamento de QR/chave/códigos. O fecho desse levantamento estático não certifica todas as mensagens produzidas por backend, conteúdo e serviços em execução; esse é o saldo de idioma ainda aberto.
Provas novas: 34 testes dirigidos de formulário/relatório passaram; TypeScript, build e lint PHP dos ficheiros de idioma/configuração passaram. Mantidas as provas anteriores não afectadas de contratos, APIs, isolamento e versões; nenhum RefreshDatabase executado sobre o acervo QA. Artefactos locais: outputs/simulator-integrated-review/ (inventário efectivo, controlos independentes, modelos dos quatro relatórios, DOCX/HTML e checked-* com PDF/páginas conferidas). As pastas anteriores render-*/final-* são intermédias e não são as versões entregues.
Exemplos para revisão por HTTP na aplicação QA local, sem file:: http://127.0.0.1:18570/qa/relatorios/simulador/positivo.pdf, negativo.pdf, nulo.pdf, incompleto.pdf, e os mesmos nomes com extensão .docx. Estes endereços são uma whitelist do router privado de QA, exclusivamente loopback; não são rotas públicas de produção. Ficheiros não sintéticos e configuração privada não são servidos por esta whitelist.
Estimativa restante: 6–10 h, já descontado o trabalho acima e as provas aceites; não são as 18–30 h iniciais. Distribuição: continuidade autenticada/histórico e mudança de parâmetros 2–3 h; controlos adicionais delimitados 1–2 h; impressão Edge e comparação ecrã/download 1–2 h; mensagens dinâmicas/falhas de gravação/exportação e fecho 2–3 h. Não inclui cadastrar regras fiscais ausentes nem decidir taxas/incentivos sem fundamento. Falta de dados fiscais não bloqueia os controlos aritméticos disponíveis. A revisão integral continua aberta nos pontos precisos desta tabela.
Continuação delimitada do simulador — controlo operacional e fontes
Base a690c665fb4e, mesma branch QA. Clone exclusivo simulator_review_delta_20261020_test, loopback 55441, aplicação http://127.0.0.1:18576. A base anterior e as contas reais foram preservadas. Duas contas e dois dossiers SINTÉTICOS QA foram preparados apenas neste clone; sem funções de gestão e sem transporte para o destino. O sinalizador local INVESTOR_PATH_ENABLED=true habilitou a capacidade já existente neste clone; não representa configuração aplicada remotamente.
| Item existente | Resultado desta continuação | Saldo |
|---|---|---|
| AUD-SIM-INT01 | Prova anterior de data inválida preservada; código não alterado neste ponto. | Concluído o delta anterior; sem repetição. |
| AUD-SIM-INT02 | Confirmado zero de regras de qualquer estado na base QA original, com visibilidade administrativa sem ocultação por RLS; biblioteca contém 30 documentos. Inventariados 9901 caminhos do acervo antes da selecção: 32 candidatos por nome fiscal e três originais versionados no repositório, estes com hash actual conferido. Existem análises de textos e correspondências preparadas em primary-text-review-2025-2026.md, official-source-register.md, fiscal-source-references-2026-10-06.csv e comando de arquivo existente. Não se identificou um conjunto serializado de parâmetros fiscais reais nos seeders/configuração pesquisados. |
Não confundir ausência do cadastro executável QA com ausência de fontes/trabalho documental. Leitura actual da homologação aguarda autenticação SSH local; não se afirmou que o destino também está vazio. Os binários do acervo montado não foram todos relidos: enumeração de caminhos não comprova conteúdo/versão. |
| AUD-SIM-INT03 | A e B recuperaram títulos próprios; B conservou a edição após erro/repetição. Logout e novo login normais, depois recuperação de A e B, conferidos no navegador. Recusa de outra conta: 403 nos dois dossiers e 404 no resultado, pelo serviço/política utilizados pelo controlador. | Concluída a conferência delimitada. O papel PostgreSQL deste clone é superutilizador: esta prova de recusa é da aplicação, não nova certificação de RLS. Provas anteriores de RLS não privilegiado mantidas. |
| AUD-SIM-INT04 | Corrigida a abertura de histórico que carregava mas não mostrava o resultado no percurso de pequeno negócio. Resultado seleccionado agora visível e explicitamente separado das entradas do dossier. Navegador abriu 24 e 12; três snapshots mantiveram hashes/versões originais após a utilização. | Versões sintéticas exclusivamente em memória do resolvedor: 7,5% até Junho e 9,25% a partir de Julho, fonte e código QA que não representam legislação. Versão histórica conservada; transição dentro do período fica indeterminada; versão da fonte incompatível deixa de resolver. Nada foi registado/publicado na base ou no destino. É prova do resolvedor, não de execução fiscal integrada. |
| AUD-SIM-INT05 | Livro independente de três meses: resultado antes de impostos 225 MZN, fundo de maneio 130, usos 730, caixa inicial após usos 470 e caixa final 638. Distintos reconhecimento/pagamento de juros, capital, compras, despesas e cobranças. Tesouraria com mês de imposto desconhecido mantém total indeterminado; caixa conhecida 210, sem somar crédito/pedido/reconhecimento de IVA como dinheiro. | Controlos passaram. Pressupostos completos no teste simulator-independent-review.test.mjs; não são previsões ou taxas legais. |
| AUD-SIM-INT06 | CSV e Word efectivamente descarregados pelos botões normais do dossier B, não por gerador autónomo. Prestação 88,85, juros 66,19 e saldo 100 coincidem com o ecrã. DOCX usa vírgula decimal; CSV/ecrã usam ponto. Word de seis páginas integralmente conferido após renderização, com pressupostos e campos desconhecidos explícitos. | Impressão nativa Edge aberta, aguardando gravação de SINTETICO-QA-Edge-continuacao.pdf pelo utilizador; o diálogo não é acessível à automação. Não contar o PDF renderizado do DOCX como essa prova. |
| AUD-SIM-INT07 | Corrigido Abrir cálculo: pequeno negócio abre a etapa financeira existente, em vez de procurar uma etapa fiscal ausente. Falha única 503 de gravação preservou edição; botão Guardar agora repete efectivamente a escrita, com fila serializada e rechecagem da impressão digital para evitar gravação redundante. Recuperação posterior confirmou a edição. | Exportação normal Word/CSV comprovada. Provas automáticas aceites de limites de anexos preservadas e regressão do exportador passou. A tentativa interactiva com anexo sintético de 16 MiB foi impedida pela permissão de URLs de ficheiro da extensão, antes de o ficheiro entrar na aplicação; não foi registada como falha do portal nem como prova de recusa pela interface. |
| AUD-SIM-INT08 | Mensagem dinâmica Not found observada foi tratada no respondedor comum: mensagens genéricas de ausência/acesso/sessão/tentativas/servidor em português, preservando HTTP e correlação. Traduzidas as mensagens de validação de parâmetros/expressões que o controlador de governação apresenta nos campos, sem alterar DSL, códigos ou limites. | Conferência do 404 por pedido real ao kernel passou; mensagens das validações revistas no código/controlador. Inventário estático anterior e traduções intencionalmente seleccionáveis mantidos. Não se certificou cada conteúdo dinâmico do catálogo nem uma sessão administrativa de governação. |
Pressupostos do crédito de controlo: capital 1000 MZN; prazo 12 meses; periodicidade mensal (12 prestações); taxa nominal anual hipotética 12%, dividida por 12, resultando em 1% por mês; sem carência, comissão inicial ou periódica. Montantes com duas casas decimais, juros/prestação com metade para cima; saldo residual ajustado na última prestação. Primeira prestação 88,85; última 88,84; juros totais 66,19; total pago 1066,19 MZN. O CSV contém o cronograma completo; o Word apresenta prestação inicial, juros e receita de cálculo. O controlo anterior de 100 por mês usa capital 1200 MZN, 12 meses, periodicidade mensal, taxa nominal anual zero, sem carência/comissões, mesmo arredondamento, total 1200. Estes pressupostos foram acrescentados às saídas e à prova; nenhum produto de crédito foi confirmado.
Reconciliação fiscal: os três originais já versionados (BR 248/2025, republicação Lei 22/2022 e BR 89/2017), as análises e relações documentais são trabalho reutilizável. Não pedir novamente documentos já disponíveis nem reabrir a credibilidade das fontes oficiais aceites pela Tempo em 08/10. As referências antigas a reautenticação genérica ficam ultrapassadas por essa decisão; continuam a ser tarefas distintas identificar artigo, âmbito, período e parâmetro. A biblioteca documental não é a tabela de parâmetros. O repositório contém governação, DSL e resolvedor temporal; RunSimulation executa a aritmética personalizada e não consome essas fórmulas fiscais. Mesmo encontrar parâmetros no destino não comprovaria cálculo fiscal integrado. Essa ligação funcional não foi implementada silenciosamente neste recorte.
Artefactos em outputs/simulator-continuation-20261020/: interface-comparison.json, interface-financial.csv, interface-report.docx, seis páginas em docx-render/, provas de A/B e nova sessão, history-preservation-proof.json, fiscal-corpus-inventory.json e local-rule-visibility.json. Credenciais, dump e fixtures privadas ficam excluídos do Git. O script read-fiscal-remote.py preparado só faz leitura administrativa e BEGIN READ ONLY/SELECT/ROLLBACK; ainda não foi executado por faltar autenticar a ligação. Nenhum teste ou dado sintético foi enviado à homologação.
Esforço restante do recorte: 1–3 h após os acessos/ficheiro necessários, para recolha remota, conferência do PDF nativo e fecho das limitações de interface. O tempo de espera do utilizador não é esforço de programação. Não são as 6–10 h anteriores nem as 18–30 h iniciais. Não inclui implementar o motor fiscal integrado ou activar parâmetros reais. As pendências de acesso e impressão não bloqueiam a revisão dos resultados QA já utilizáveis.
Achado adicional de continuidade, identificado antes da correcção: o componente de tesouraria mantinha os seus pressupostos apenas no estado React; não recebia nem devolvia snapshot ao rascunho. Foi acrescentado cashflow_snapshot versionado ao JSON económico existente e ao validador do pedido, sem migration. O componente recupera os campos e o modo de imposto; guarda apenas após edição e não converte vazios em zero. Snapshots desconhecidos/inválidos não geram resultados alternativos e mostram aviso. O relatório consolidado e o CSV do dossier passam a incluir pressupostos, valores conhecidos/indeterminados e meses; o resumo destaca a tesouraria quando existir snapshot. Dossiers antigos sem esse campo mantêm a apresentação anterior — as seis páginas do DOCX de B já conferidas não tinham esse campo e não foram reemitidas desnecessariamente.
Provas adicionais: teste HTTP com dois dossiers, logout lógico/nova sessão, recuperação exacta e recusa por outra conta passou (8 asserções), em transacção revertida no clone. Quatro controlos frontend dirigidos passaram, incluindo recuperação de mês vazio, valor inválido para correcção, relatório sem zero inventado e pressupostos completos do crédito. As 10 verificações do exportador afectado passaram; teste temporal sintético passou (7 asserções); erro HTTP em português passou (3). TypeScript/build e sintaxe PHP passaram. A conferência visual do novo componente de tesouraria com sessão real QA permanece por executar depois de fechar a impressão do Edge; não foi substituída por uma prova unitária.
Saldo revisto após esse achado: 2–4 h de verificação delimitada, já descontado o desenvolvimento concluído: leitura remota 0,5–1 h; PDF nativo 0,5–1 h; continuidade visual/saída da tesouraria recém-corrigida 0,5–1 h; consolidação das provas e limitações 0,5–1 h. Exclui espera por autenticação/ficheiro e a integração funcional futura das regras fiscais. Esta estimativa substitui 1–3 h acima por uma divergência concreta; não retoma as 6–10 h nem as 18–30 h originais.
Retoma da conferência visual de tesouraria — 21/10/2026
[Retoma 21/10/2026] QA 18576, clone simulator_review_delta_20261020_test: sessão sintética renovada por login normal; gravação autenticada e recarga recuperaram saldo 123, receita 900, custos 600, calendário mensal 10/vazio/0, crédito IVA estimado 500. Caixa conhecida 3713 MZN; total indeterminado desde mês 2; crédito estimado excluído da caixa. Prova visual cashflow-recovered-20261021.png e snapshot .txt em outputs/simulator-continuation-20261020. Não certifica recuperação destes novos valores após outro login, CSV/DOCX ou PDF nativo. Ligação de controlo do navegador perdida durante espera de download; não atribuir falha à aplicação. Leitura remota aguarda identificação da ligação SSH; zero alterações no destino.
Leitura fiscal remota e saída nativa — 21/10/2026
[Leitura SSH 21/10/2026 08:17 Maputo] Zero regras em simulation_tax_rule_versions na homologação, incluindo todos os estados por leitura administrativa sem ocultação RLS. Seis referências em investment_legal_sources; não são parâmetros executáveis. QA também tinha zero regras. BEGIN READ ONLY/SELECT/ROLLBACK; zero escritas. Prova homologation-fiscal-readonly.json. O git HEAD registado é do checkout consultado, não certifica a revisão do build servido. A ausência de cadastro não é ausência de fontes oficiais nem reabre a aceitação da Tempo de 08/10. Não implementa a ligação funcional ao motor fiscal.
[Exportação nativa 21/10/2026] Saída actual aberta pelo botão do portal: revisão 4, 12 meses, MZN, saldo inicial123/receita900/custos600, calendário10/vazio/0, caixa conhecida3713 e total indeterminado coincidem com o ecrã. Crédito estimado500 identificado como pressuposto, não somado à caixa. Prova portal-print-current-20261021.txt. Relatório de20/10/revisão2 preservado, sem o confundir com o actual. Downloads: sem novo CSV na pasta habitual ou nos temporários locais conferidos; isso não demonstra falha nem cancelamento. Histórico de downloads bloqueado pela política da ferramenta; caminho do ficheiro solicitado antes de repetir. PDF nativo aberto, mas paginação/legibilidade aguardam o ficheiro efectivamente guardado pelo Edge; conversão DOCX/PDF anterior não conta como essa prova. Perda da ligação e bloqueio de controlo durante impressão são limitações da ferramenta, sem falha do simulador demonstrada.
Ficheiros de Transferências recuperados — 21/10/2026
[Fecho da verificação dos ficheiros 21/10/2026] Transferências Windows redireccionada para \Mac\Home\Downloads; CSV concluído08:12:46, PDF nativo08:17:19. Sem repetir downloads. Os12 registos mensais do CSV coincidem exactamente com o snapshot do ecrã após correspondência de colunas; PDF revisão4 conserva valores mensais, MZN,12meses,123/900/600, crédito estimado500 não caixa e caixa conhecida3713. Os10 PNG do PDF nativo foram inspeccionados: defeito confirmado na linha repetida de rodapé, sobreposta ao corpo perto do topo de páginas, incluindo2,6e10. Conteúdo/valores conferidos; paginação/legibilidade não aceites até correcção e nova prova nativa. Não é conversão DOCX/PDF. Perda de ligação continua limitação da ferramenta e não causou falha do download; sobreposição é defeito distinto demonstrado no PDF. Provas: download-native-inspection-20261021.json, portal-cashflow-20261021.csv, portal-native-20261021.pdf e native-pdf-render/. A indicação anterior de ficheiros pendentes fica superada por esta prova. Sem alteração funcional nem escrita remota.
Correcção do rodapé do PDF nativo em QA — 21/10/2026
[Correcção do rodapé nativo QA 21/10/2026] Origem: pedido expresso da Tempo nesta conversa; solução de implementação, sem regra organizacional nova. Causa em createProjectDossierPrintHtml (project-dossier-document.ts): footer position:fixed/bottom:-14mm sobrepunha a área fragmentada de impressão. Substituído na impressão por caixas @page @bottom-left/@bottom-right, dentro da margem inferior reservada20mm, com identificação/revisão e número de página/total. Rodapé normal de ecrã conservado; sem diminuir letras do corpo (10,5pt), tabelas, cabeçalhos ou origens (9pt), nem retirar conteúdo. Mesmo dossier B/revisão4 regenerado pelo botão do portal QA18576 e guardado no Edge, não por conversão DOCX. 10→10 páginas A4; comparação automática do corpo por página, descontando apenas hora de emissão/rodapé/contador, coincide integralmente. Inspecção visual dos10 PNG: sem sobreposição, cabeçalhos de tabela repetidos, quebras/linhas preservadas, última página íntegra e numeração1/10→10/10. Rodapés medidos inteiramente na margem inferior. Ecrã QA conferido após build; estilos screen e geradores DOCX/ZIP inalterados por comparação de fontes. 10 testes do exportador, TypeScript e build passaram; escape da revisão na nova string CSS verificado. Reutilizadas provas de valores e CSV aceites; não repetido download/aritmética. Provas: native-footer-fix-20261021.json; portal-native-fixed-20261021.pdf; native-footer-before-after-20261021.jpg; native-pdf-fixed-render/; screen-after-print-fix-20261021.png. Fechado exclusivamente o defeito de rodapé neste relatório QA; limitações e restantes critérios de AUD-SIM-INT06 mantêm âmbito próprio. Relato anterior de sobreposição fica superado neste delta pela comparação antes/depois. Branch codex/simulator-integrated-review separada de main, sem integração, escrita remota ou disponibilização activa; revisão prevista mantém-se pendente.
Saldo consolidado dos oito itens — 21/10/2026
Reconciliação a pedido expresso da Tempo. O fecho do rodapé limita-se à apresentação deste relatório e baseia-se nas provas apresentadas; o utilizador declarou não ter conferido a imagem nem o PDF pelos caminhos locais. Não é fecho da revisão integral do simulador. Reutilizadas as provas aceites, sem repetir10 páginas, valores,CSV ou consulta SSH.
| Item existente | Estado no recorte | Saldo / limite |
|---|---|---|
| AUD-SIM-INT01 | Concluído no recorte | Nenhum delta de validação de data por demonstrar; prova anterior preservada. |
| AUD-SIM-INT02 | Parcial | Leitura remota concluída: zero regras de todos os estados na homologação, tal como QA; seis referências jurídicas não são parâmetros executáveis. Falta cadastro fundamentado por componente/âmbito/período e ligação funcional ao motor fiscal. Fontes e análises existentes reutilizáveis; aceitação oficial da Tempo de08/10 preservada. Não activar taxas nem importar/publicar por esta reconciliação. |
| AUD-SIM-INT03 | Concluído no recorte | A/B, logout/novo login, recuperação e recusa pela aplicação demonstrados anteriormente. A tesouraria tem prova API de nova sessão e prova visual de recuperação por recarga. Não atribuir ao navegador nova sessão dos valores de tesouraria, nem nova certificação RLS; limites expressos conservados. |
| AUD-SIM-INT04 | Concluído no recorte demonstrado | Histórico24/12 visível, hashes preservados e versões temporais sintéticas do resolvedor conferidas. Execução fiscal integrada com parâmetros reais pertence ao saldo de02 e não foi demonstrada por estes testes. |
| AUD-SIM-INT05 | Concluído nos controlos delimitados | Controlos independentes de caixa/plano/crédito, zero/desconhecido e moedas preservados. Não são validação de taxas legais nem certificação de toda a contabilidade. |
| AUD-SIM-INT06 | Concluído na apresentação e comparação deste relatório | Rodapé do PDF nativo fechado em QA segundo provas apresentadas;10 páginas/valores/CSV não repetidos. Tempo declarou que não abriu imagem/PDF pelos caminhos locais: registar aceitação das provas, não revisão visual directa do utilizador. Outras provas de relatório conservadas; falhas interactivas de exportação/anexos mantêm saldo em07. |
| AUD-SIM-INT07 | Parcial | Gravação503→nova tentativa→recuperação e exportações normais demonstradas. Faltam falhas dirigidas de geração Word/ZIP/PDF e retoma; teste interactivo de limite de anexo não ocorreu por bloqueio da ferramenta antes do envio. Nova leitura do código: três catch apresentam cause.message para Error, podendo mostrar texto técnico sem tradução. Sem nova falha de execução alegada. |
| AUD-SIM-INT08 | Parcial | Inventário estático,404 real e traduções de validação preservados. Classificar/apresentar em português os erros dinâmicos das bibliotecas de exportação (cause.message, três consumidores) e conferir estados residuais/governação delimitados; não certificar todos os textos dinâmicos do catálogo. |
Estimativa restante deste recorte:1–2h de engenharia, excluindo espera por interacção necessária da ferramenta: 07/08 agrupados0,75–1,5h para tratamento e conferência dirigida de erros dinâmicos/retoma/anexos; 0,25–0,5h para reconciliação final das provas. Não somar o mesmo erro duas vezes por aparecer em07e08. Substitui o saldo anterior2–4h porque leitura remota, apresentação nativa e comparação da tesouraria já foram executadas. Não inclui cadastrar/aplicar regras fiscais reais, integrar fórmulas no motor ou certificar todo o catálogo. O esforço para02 integral permanece por dimensionar por componente, âmbito, período e correspondência documental; não há estimativa de conclusão integral obtida apenas deste1–2h.
Próxima execução delimitada: corrigir a apresentação de excepções brutas nos três exportadores, conferir falha/retoma e os limites interactivos que faltam, preservando os relatórios/CSV já aceites. Branch codex/simulator-integrated-review mantida separada de main até à revisão consolidada. Nenhuma nova concessão, regra fiscal, migration ou escrita remota.
Candidata consolidada da revisão do simulador — 21/10/2026
Origem: pedido expresso da Tempo para fechar apenas falhas dirigidas de exportação/anexos, apresentação das mensagens e consolidação. As 1–2 h anteriores respeitavam a esse recorte, não à implementação fiscal integral. A branch codex/simulator-integrated-review permanece separada de main; não integrar antes da revisão consolidada porque a cadeia existente disponibiliza automaticamente a revisão integrada.
Separação funcional preservada. Os cálculos de planeamento usam valores declarados pelo utilizador, com origem e pressupostos identificados. O relatório não os transforma em resultados fiscais. Falta de imposto/parâmetro continua indeterminada, não zero; crédito/pedido/reconhecimento de IVA não se torna dinheiro recebido. A correcção de falhas de exportação e do rodapé não encerra a componente fiscal.
Implementação deste delta. O exportador apresenta mensagens em português, identifica a operação e a referência de diagnóstico e mantém as selecções para nova tentativa pelo mesmo botão. A excepção original é registada na consola técnica local com operação/referência; não há novo envio ao servidor, telemetria nem registo de conteúdo do dossier/anexos. A consola é um diagnóstico local, não uma auditoria persistente no servidor. Uma guarda síncrona recusa outra execução enquanto a primeira está activa, mesmo antes da actualização do estado React; após erro a guarda é libertada. Preparação dos anexos é atómica: falhas/limites não substituem a lista existente nem as legendas. A selecção repetida do mesmo nome com os mesmos bytes mantém uma entrada; bytes diferentes com o mesmo nome e nomes diferentes continuam distintos. Esta identidade é escolha de implementação local, não regra de cadastro/publicação documental. Os limites de quantidade/tamanho já existentes não foram alterados.
Provas reutilizadas. Data inválida; A/B e nova sessão; recusa de outra conta; histórico24/12 e hashes; resolvedor temporal sintético; controlos financeiros independentes; Word/CSV e respectivos valores; PDF nativo10 páginas/rodapé/última página; inventários/documentos e leitura SSH sem escrita. A Tempo aceitou o fecho do rodapé segundo as provas apresentadas e declarou que não abriu a imagem/PDF pelos caminhos locais. Não lhe atribuir inspecção visual directa. Os testes temporais sintéticos não representam legislação. A prova de recusa do clone com superutilizador é da aplicação; não é uma nova certificação de RLS. Não repetir as provas aceites apenas para gerar uma nova lista de resultados.
Ensaio dirigido isolado. http://127.0.0.1:18576/qa/export-recovery usa o componente real e os geradores reais, com uma falha única de biblioteca injectada no módulo de ensaio, sem alteração das rotas de produção. Os controlos de falha e os ficheiros sintéticos ficam em outputs/, fora do Git e do pacote. Os contadores referem-se a chamadas/generações; para ZIP contam a geração interna de Word e a preparação do arquivo, não duas transferências. No ensaio de nova tentativa de PDF é omitida apenas a impressão automática, para observar a janela com conteúdo e não repetir a prova nativa aceite. Nenhuma dessas injecções entra na candidata funcional.
Procedimento de integração após revisão. Fixar o commit candidato e manifesto de fontes; obter o main remoto actualizado e reconciliar apenas os deltas dos programadores que afectem estas fontes/consumidores. Rever o diff e conferir no ambiente QA a revisão exacta a integrar; repetir apenas verificações afectadas por conflitos ou alterações posteriores. Este delta não contém migrations, cadastro de regras, importação, publicação de documentos, contas, permissões ou alterações de MFA/configuração. Após decisão da Tempo, integrar pelo processo Git existente; confirmar o recibo da cadeia e a revisão efectivamente servida em /build/revision.json, com consulta pública e login privado conferidos nos consumidores afectados. Uma falha deve conservar a release anterior; não editar a pasta servida para contornar a cadeia. A reversão usa o mecanismo de release anterior de código/build, preservando base, anexos, configuração e dados posteriores; não repor um dump antigo. Se uma futura entrega incluir regras/dados activos, exigir o procedimento específico já aprovado de backup/restauro e acção autenticada; esse trabalho não está incluído aqui.
Diagnóstico fiscal separado da candidata — 21/10/2026
| Camada | Existente e comprovado | Saldo efectivo |
|---|---|---|
| Fontes | Inventário anterior de9901 caminhos e32 candidatos por nome; três originais versionados: BR248/I/Suplemento1/2025, republicação Lei22/2022 no BR250/2.ºSuplemento e BR89/2017. Análises em primary-text-review-2025-2026.md, official-source-register.md, fiscal-reform-2026-review.md e referências em fiscal-source-references-2026-10-06.csv. |
Reutilizar conteúdo, hashes, versões e citações já disponíveis; não pedir novamente esses documentos. A enumeração de caminhos não equivale à leitura de todos os binários. Distinguir fontes já lidas de fontes só inventariadas e alterações/anexos ainda sem correspondência. |
| Parâmetros executáveis | Leitura administrativa de todos os estados confirmou zero linhas em simulation_tax_rule_versions tanto na QA como na homologação. A homologação tem seis referências em investment_legal_sources, ligadas a estruturas territoriais; não são taxas/fórmulas prontas. |
Cadastrar por componente: código/versão, diploma/artigo/versão/hash, âmbito e condições, início/fim de aplicação, valor/unidade, bases/limites/exclusões, fórmula e arredondamento fundamentados. Os campos necessários variam por regra; não preencher lacunas por zero ou pela taxa mais recente. |
| Governação e consulta | Modelo versionado, controlador de transições, API de resolução por componente/período/contexto, selecção de publicados e compatibilidade de versão da fonte; resolução temporal e indeterminação já ensaiadas. | Reutilizar estes serviços; conferir as correspondências documentais e a operação com parâmetros reais quando estes existirem. Não criar aprovações, nomeações ou uma nova exigência organizacional por escolha técnica. A Tempo define os papéis e as regras. |
| Expressões | SimulationTaxRuleExpression já valida e avalia a DSL investmoz.tax.v1 com aritmética racional, arredondamento e valores em falta. |
Não reconstruir o avaliador. Verificar se cada regra fundamentada cabe na linguagem existente e estender apenas operações concretamente necessárias. |
| Execução fiscal integrada | RunSimulation executa base × taxa/100 × (1−redução/100), identifica custom_planning, legal_interpretation=false, ruleset_version=null e moeda não indicada nesse cenário. Consulta/DSL não são consumidas por este fluxo como motor fiscal. |
Desenvolver orquestração explícita de componente/período/âmbito → regras elegíveis → entradas e parâmetros → avaliação → resultado e explicação com fontes/versões imutáveis. Tratar ambiguidade/transição/ausência como indeterminação. Manter o cenário de planeamento separado, sem o relabelar como imposto calculado. |
| Resultado, dossier e relatório | Snapshots, histórico e exportadores existentes podem transportar resultados e proveniência; relatórios actuais identificam pressupostos/estimativas. | Integrar o resultado fiscal com identificação própria de regra, período, unidade/moeda, base, passos, arredondamento e lacunas. Guardar reprodução histórica e demonstrar casos de referência por regra, isolamento e não reaplicação de uma versão actual a um resultado antigo. |
Componentes a parametrizar, não taxas inventadas. O acervo já analisado identifica famílias de alterações para ICE (Lei7/2025/tabela), ISPC (Lei9/2025), IVA (republicação Lei22/2022 e Lei10/2025, além da consolidação/rectificação aplicável), IRPS (Lei11/2025) e IRPC (Lei12/2025). A API também contempla INSS, retenções e direitos aduaneiros. Isto é inventário de domínios, não prova de cobertura documental completa nem autorização para aplicar uma taxa genérica. Para ICE/aduaneiro são relevantes código/unidade/tabela e período; para IVA, operação, incidência/exclusões/dedução e estado de reembolso; para ISPC, elegibilidade/limites e obrigações; para IRPS/IRPC, categoria, residência/estabelecimento, base, retenções e regimes específicos. Prazos, taxas, anexos e incentivos só entram com correspondência documental aplicável.
A aceitação das fontes oficiais determinada pela Tempo em08/10 prevalece sobre pedidos históricos genéricos de reconfirmação de autenticidade ou de um fiscalista adicional. Identificar o artigo, âmbito, período, alterações/revogação e parâmetros é aplicação/rastreabilidade da fonte aceite, não segunda validação da sua credibilidade. A biblioteca documental, a situação jurídica e a utilização em cálculo são estados independentes; importar ou publicar documentos nunca activa cálculo fiscal.
Desenvolvimento fiscal necessário: correspondência documental e cadastro versionado; adaptação concreta de expressões quando necessária; orquestração do cálculo; contrato de resultado/proveniência/histórico; ligação à interface/relatórios e casos de referência por componente/período. Nenhuma dessas frentes é encerrada por corrigir crédito, orçamento, tesouraria, falhas de exportação ou rodapé. O esforço integral deve ser dimensionado por regras/componentes e lacunas documentais identificadas; não cabe na estimativa de1–2h do recorte de exportação.
Fecho do recorte de exportações e saldo da candidata — 21/10/2026
| Item existente | Saldo consolidado da candidata | Prova / limite |
|---|---|---|
| AUD-SIM-INT01 | Concluído no recorte | Validação de data: prova anterior reutilizada. |
| AUD-SIM-INT02 | Parcial; implementação fiscal integral aberta | Zero regras remotas/QA; fontes, cadastro e integração discriminados no diagnóstico separado. |
| AUD-SIM-INT03 | Concluído nas provas delimitadas | A/B/nova sessão e recusas anteriores; tesouraria com API/nova sessão e UI/recarga, sem alegar uma nova prova browser da mesma sessão. Limite RLS mantido. |
| AUD-SIM-INT04 | Concluído no recorte demonstrado | Histórico/snapshots e resolvedor sintético reutilizados; integração real fiscal permanece em02. |
| AUD-SIM-INT05 | Concluído nos controlos delimitados | Controlos independentes e provas financeiras aceites reutilizados; sem validação legal de impostos. |
| AUD-SIM-INT06 | Concluído na apresentação/comparação deste relatório | Rodapé nativo aceito segundo provas; sem repetir10páginas/valores/CSV; sem atribuir inspecção local ao utilizador. |
| AUD-SIM-INT07 | Concluído no recorte dirigido QA | 3falhas de geração/retoma, anexo16MB recusado com lista conservada, re-selecção sem duplicação e ZIP íntegro; injecção sintética fora da entrega. |
| AUD-SIM-INT08 | Concluído nos consumidores afectados | Mensagens portuguesas/diagnóstico técnico separado; limites de catálogo/governação mantidos, sem certificação global. |
Esforço restante do recorte de engenharia de exportações:0h; revisão consolidada e eventual integração continuam pendentes. As1–2h anteriores foram estimativa deste recorte; não eram estimativa da implementação fiscal integral. Não fechar a revisão integral do simulador nem AUD-SIM-INT02 por este incremento. Word/PDF/ZIP foram ensaiados no componente real com falhas sintéticas de geração de um invólucro QA privado; ficheiros de67bytes e16MiB seleccionados manualmente pelo utilizador, estados observados directamente pelo Codex. A primeira recusa encontrou lista vazia e não foi usada como prova de preservação; a sequência posterior demonstrou lista válida→recusa16MB mantendo1→re-selecção válida mantendo1. ZIP real verificado por bytes, entrada única, título e secção. Leitura transitória falhada e concorrência demonstradas nos testes dirigidos, não por avaria real do sistema de ficheiros. A limitação anterior da selecção automática não foi contornada: a selecção normal foi manual. Os detalhes técnicos permanecem em diagnóstico local; não foi criado serviço de recolha remoto.
Provas actuais em outputs/simulator-continuation-20261020/: export-word-error-20261021., export-pdf-error-20261021.txt, export-pdf-retry-20261021.txt, export-zip-error-20261021., export-zip-retry-20261021.txt, attachment-limit-preserved-20261021., attachment-duplicate-retry-20261021., export-zip-content-proof-20261021.json e export-recovery-candidate-20261021.json. O procedimento de integração e diagnóstico fiscal imediatamente anteriores integram esta mesma candidata e o mesmo registo; sem matriz/backlog adicional.
Identificação da entrega e conferência do limite — 21/10/2026
A entrega funcional 13f68f1b identifica-se como melhorias de planeamento financeiro, recuperação, exportação e idioma. Está pronta para revisão de integração, não representa a conclusão do simulador fiscal. Não houve integração em main nem disponibilização activa. A Tempo confirmou o fecho em QA segundo o relatório e declarou não ter conferido o registo local; não atribuir essa conferência ao utilizador.
Conferência somente por leitura, sem repetir ensaios: em c22003a3, anterior à candidata, project-dossier-report.ts já definia MAX_DOSSIER_ATTACHMENT_BYTES = 15 * 1024 * 1024 (15.728.640 bytes), quantidade10 e total50MiB. A candidata conserva esses valores. O ficheiro recusado tem16.777.216 bytes (16MiB), superior ao limite preexistente de15MiB; não foi introduzido limite inferior. A interface histórica escreve «MB», mas a implementação usa unidades binárias. A origem é uma escolha de implementação já existente; esta leitura não inventa uma aprovação organizacional específica para esse número. O limite2MiB de incorporação de texto é separado do limite por anexo: conteúdos maiores podem seguir como originais no ZIP, dentro dos15MiB. A nova preparação/deduplicação chama a mesma validação por anexo e não transforma2MiB num bloqueio de selecção.
Proposta do primeiro lote fiscal delimitado — 21/10/2026
Proposta para revisão, sem cadastro, publicação ou activação nesta passagem. Um único percurso inicial de IVA geral sobre base líquida já identificada, em MZN, para operações internas abrangidas pela taxa geral. Janela de cobertura/ensaio do lote:01/01/2026–31/12/2026. Esta janela não cria uma data de entrada em vigor ou caducidade legal: os metadados das regras devem reproduzir as datas dos diplomas aplicáveis. Não criar artificialmente uma expiração em31/12/2026. A cobertura do primeiro lote é escolha de implementação proposta, não uma nova restrição organizacional da Tempo.
Regra candidata, ainda não cadastrada: IVA-GERAL-BASE-LIQUIDA, identificador provisório para a fórmula base tributável × taxa geral/100. A análise primária já existente identifica16% no art.17(1) da republicação da Lei22/2022, com efeitos desde01/01/2023, e documenta que a Lei10/2025 não altera esse artigo. Reutilizar essa conclusão e as citações/versões existentes, sem nova validação genérica da credibilidade da fonte. O lote não decide automaticamente se uma pessoa/operação está sujeita, isenta, reduzida ou excluída. A aplicação à operação exige um âmbito identificado e evidência/declaração de entrada rotulada; se o âmbito não estiver determinado, a saída é indeterminada. Um cálculo por fórmula com fonte verificada e âmbito apenas declarado deve ser identificado dessa forma, sem o apresentar como obrigação fiscal validada.
| Elemento | Existente e reutilizável | Trabalho do lote |
|---|---|---|
| Fonte da taxa | source-archive/Lei-22-2022-IVA-republicada-BR-250-2-suplemento.pdf, art.17(1); análise em primary-text-review-2025-2026.md e adenda de taxa reconciliada em fiscal-reform-2026-review.md. |
Recuperar exemplar/hash/edição/citação já registados e ligar ao cadastro. A taxa identificada não está tecnicamente cadastrada como parâmetro executável. |
| Cadeia para2026 | source-archive/BR-248-I-Suplemento-1-2025.pdf, alterações IVA/Lei10/2025 e vigência documentadas nas análises; aviso BR89/2017 e referências da consolidação disponíveis. |
Aplicar as correspondências de âmbito/período que afectem esta regra. Não declarar que todos os binários do acervo foram analisados. Os diplomas/anexos sem correspondência continuam no inventário existente. Não reconstruir uma consolidação completa de todos os regimes para implementar apenas esta regra. |
| Parâmetros e entradas | Valor nominal16% já fundamentado no acervo; modelo aceita valor/unidade/condições; resolução temporal existente. | Cadastrar código/versão, unidadepercent, condições de operação e vínculo documental. Determinar base tributável, âmbito concreto, período e moeda de entrada. Não presumir MZN nem base fiscal pela simples existência de um valor de planeamento. |
| Arredondamento e unidade de apuramento | O avaliador já suporta operações racionais e arredondamentos explícitos. | Mapear a política aplicável à liquidação sobre base líquida, a precisão e se o arredondamento incide por linha/documento/apuramento. Não transportar automaticamente a regra do art.34 para este percurso, nem assumir HALF_UP/duas casas como regra fiscal. Até esse ponto estar fundamentado, não publicar a regra nem apresentar um total fiscal final arredondado; conservar resultado exacto/intermédio e lacuna explícita. |
| Períodos/versões | O resolvedor verifica período, âmbito e compatibilidade da versão da fonte. | Preservar a vigência efectiva do diploma; limitar a cobertura demonstrada deste lote a2026. Pedido fora dessa cobertura identifica «fora da cobertura demonstrada do lote», sem afirmar que a lei deixou de vigorar ou usar zero como substituto. |
Fora deste lote: extracção de IVA de preço já incluído (art.34), taxas reduzidas, isenções/listas de bens, importações/serviços digitais/não residentes, dedução/crédito/reembolso, incentivos territoriais, ISPC, IRPS, IRPC, ICE, INSS, retenções e direitos aduaneiros. Estes domínios permanecem no acervo/registo existente e não são omitidos por ficarem fora desta primeira implementação. Não confundir consulta documental disponível com disponibilidade de cálculo.
Cadastro e aplicação documental — estimativa4–8h. Reutilizar as análises/fontes, preparar a ficha nominal da regra e parâmetro, transcrever vínculos/versionamento/condições e política de arredondamento aplicável, rever fronteiras temporais e casos de referência e cadastrar como rascunho apenas em QA pelo mecanismo existente quando a execução do lote for autorizada. O intervalo inclui a aplicação documental ao percurso delimitado; se a política ou o âmbito permanecerem ambíguos no acervo, registar a lacuna e parar apenas esse resultado, sem criar um valor. A espera por um elemento documental concreto não está incluída. As fontes oficiais continuam aceites pela decisão da Tempo; não se introduz novo fiscalista ou nova certificação genérica como condição.
Desenvolvimento de código e aceitação técnica — estimativa12–20h. Reutilizar SimulationTaxRuleGovernance, SimulationTaxParameterResolver e SimulationTaxRuleExpression; não reconstruir cadastro, transições, DSL ou resolvedor. Acrescentar a orquestração explícita do percurso fiscal: componente/período/âmbito→resolução existente→parâmetros e entradas→avaliação existente→resultado com explicação e proveniência. Separar o cenário fiscal do custom_planning de RunSimulation. Ligar o resultado ao dossier, histórico e exportadores existentes, com regra/versão/fonte/período/moeda/entradas/passos/arredondamento/estado de validação do âmbito. Acrescentar tratamento de lacunas e casos de referência dirigidos. Não se prevê um novo motor ou uma migration por princípio; confirmar necessidade a partir do contrato do resultado, sem alargar o schema preventivamente.
Total de engenharia proposto16–28h para este lote, sem dupla contagem entre cadastro e código e sem incluir espera, revisão consolidada, activação no destino ou implementação fiscal integral. Pressupõe que o acervo disponível permita fundamentar âmbito e arredondamento deste percurso e que os mecanismos existentes continuem compatíveis. Divergência concreta é relatada antes de alargar o lote. As1–2h anteriores pertenciam exclusivamente ao recorte de exportação já concluído.
Critérios de aceitação deste primeiro lote:
- Ficha e parâmetro correspondem ao exemplar/artigo/versão/hash e vigência aplicáveis; condições e arredondamento têm fundamento identificado. Não publicar enquanto faltarem estes elementos. O cadastro em rascunho não é activação.
- No clone QA isolado, resolver a regra para contexto/período cobertos e recusar aplicação ambígua ou fora de cobertura, com lacuna expressa, sem zero/taxa de outra versão como substituto. Transição dentro de um período e fonte incompatível mantêm o comportamento temporal já existente.
- Casos independentes sobre bases que gerem resultados exactos e casos fraccionários/fronteiras da política de arredondamento correspondem à regra cadastrada; unidades/moeda não são inferidas. Zero explícito e ausência de valor continuam distintos.
- O resultado fiscal identifica regra/versão/fonte/artigo/período, entradas, passos, unidade/moeda, arredondamento e âmbito comprovado ou apenas declarado. A expressão «verificado» não se estende a uma operação cuja sujeição foi apenas declarada. Planeamento manual permanece disponível e claramente distinto.
- Guardar/recuperar o resultado no dossier e numa nova sessão mantém o snapshot original; mudar regra/entrada não reescreve o histórico. Outra conta não obtém entradas ou resultados privados. Reutilizar os mecanismos e provas de isolamento, ensaiando apenas o novo consumidor fiscal.
- Ecrã e relatório apresentam o mesmo resultado/proveniência/lacunas e distinguem o cenário fiscal de estimativas do utilizador. Reutilizar o exportador e a prova aceite de paginação; conferir só as novas linhas fiscais e os deltas de layout se existirem, sem repetir os cálculos de planeamento/CSV aceites.
- Publicação de regra, exposição do percurso e eventual disponibilização no destino são acções separadas, pelos mecanismos e papéis existentes definidos pela Tempo. Nenhum parâmetro é activado por importação de documento ou integração deste documento de proposta em Git.
Esta proposta fica ligada a AUD-SIM-INT02 na matriz existente. Não cria uma matriz ou backlog alternativos. A apresentação da proposta não autoriza, por si, a integração de13f68f1b emmain.
Actualização posterior — integração autorizada e ficha fiscal v1
A Tempo autorizou posteriormente a integração de 13f68f1b. O commit foi integrado em main e a revisão servida na homologação confirmou esse identificador em21/10/2026. As menções anteriores a integração pendente descrevem o estado histórico da candidata. A entrega continua identificada como melhorias de planeamento financeiro, recuperação, exportação e idioma, sem encerrar a implementação fiscal.
A ficha documental IVA-GERAL-BASE-LIQUIDA v1 desenvolve separadamente a proposta 0fafd348: fundamento da taxa e período, limites do art.34, exemplar digitalizado recuperado do inventário, parâmetros por cadastrar, lacunas de enquadramento/arredondamento, integração e critérios de aceitação. É rascunho documental sem cadastro ou activação. AUD-SIM-INT02 mantém-se parcial; os outros sete saldos aceites não são reabertos. Não foram repetidas provas aceites nem alterados cálculos, dados ou regras. A branch fiscal permanece separada de main.
Adenda fiscal v1.1 — 21/10/2026: a mesma ficha regista a leitura visual dirigida do CIVA/Lei13/2016, arts.1–4,6–7,15,17 e27, e a consulta do regulamento/Decreto7/2008. Enquadramento geral da base documentado, com composição, exclusões, localização e data de exigibilidade; não constitui classificação automática de operações. O arredondamento do art.34 refere-se à extracção de base com IVA incluído e o art.9(1)(b) do regulamento ao meio de pagamento cheque/vale; nenhum foi convertido em regra geral de arredondamento sobre base líquida. Permanecem por esclarecer precisão/modo/empates/agregação e a correspondência regulamentar pertinente para2026. A ficha identifica a questão documental concreta e exemplos aritméticos, sem inventar norma. Estimativa restante condicional: cadastro/aplicação documental3–6h + código/aceitação12–20h =15–26h, excluindo espera, revisão e activação. Fontes locais arquivadas com hash coincidente; não se atribui conferência ao utilizador. Nenhuma regra activada; AUD-SIM-INT02 continua parcial e a entrega13f68f1b mantém-se independente.
Decisão posterior da Tempo e execução fiscal QA v1.2 — 21/10/2026
Estado actual; substitui a condição bloqueante e a estimativa da adenda v1.1. A Tempo determinou prosseguir neste lote sem arredondamento automático, preservando precisão decimal e distinguindo valor calculado de apresentação monetária. A ausência de uma política genérica de arredondamento deixa de bloquear o cálculo do IVA sobre base líquida. Isto não é regra universal para todos os impostos. Exigências de precisão de um formato de pagamento/declaração serão identificadas nesse consumidor, sem as generalizar. A ficha existente foi consolidada emv1.2; versões anteriores permanecem emGit. Não há questão adicional à Tempo como pré-condição deste cálculo nem validação jurídica atribuída ao utilizador.
Cadastro: artefacto database/qa/iva-general-net-v1.json; comando explícito fiscal:qa-register-iva {actor} {source}, com guarda da base QA isolada, papel existente de editor e vínculo a fonte cadastrada. Confere SHA256 do exemplar e usa a governação existente para criar apenas draft. Repetição conserva o mesmoID/versão; divergência não sobrescreve o cadastro. Não corre em deploy, importação ou migration. O clone persistido é simulator_fiscal_delta_20261021_test,127.0.0.1:55441. A referência de fonte e os actores usados no ensaio são fixtures sintéticas identificadas; não constituem revisão jurídica por pessoa real nem atribuição persistente de papéis organizacionais.
Cálculo e proveniência: SimulationFiscalQaPreview usa o resolvedor temporal e avaliador existentes, com percurso explícito de rascunho QA que não altera a elegibilidade da API de parâmetros publicados. O resultado guarda contexto declarado, fonte/versão/hash, regra/versão/DSL, passos racionais e decimal exacto; apresentação guarda valor e moeda separadamente, com rounding_applied=false. Não há float, truncagem, toFixed ou nóround neste percurso. Exemplos dirigidos:0,03×16%=0,0048;9007199254740993,0003×16%=1441151880758558,880048; zero explícito conserva0. Fonte/versão incompatível e fora da cobertura2026 continuam indeterminados, sem taxa substituta/zero. A data declarada de exigibilidade alimenta a resolução, sem expiração legal artificial em31/12/2026.
Histórico e relatórios: armazenamento existente de simulações, fontes de resultado e relatórios; sem schema novo. Entradas declaradas e proveniência da regra são fontes separadas. Snapshot/relatório não são reavaliados quando a regra é editada. Nova execução usa novo registo; a mesma chave e parâmetros reutiliza a execução. O ensaio persistido actual tem simulação842e05f9-2b6e-4853-8ff5-81650633f6c4, relatório49cac0bd-f49c-4613-a8f0-1ee5c285cf81, hash8ed8155a56fdf98ad26e2f01435644e062f27ca6b067ce3553415e974261c687; resultado/relatório iguais e relatório anterior conservado. Zero regras publicadas. Ecrã e linhas do dossier/CSV distinguem cálculo exacto QA, contexto declarado, estimativas do utilizador e saldo a pagar, que não é calculado neste lote.
**Verificação deste incremento:**5testes feature/51asserções;7testes do resolvedor/25asserções;3testes frontend;TypeScript,build ePint aprovados. Os testes feature correm com transacções no clone dedicado simulator_fiscal_checks_20261021_test, separado do cadastro persistido. A primeira tentativa de base vazia encontrou uma migration antiga que exige instalação nominal; não se contornou essa guarda nem se alterou o activo: usou-se cópia do schema QA existente e transacções, sem novas migrations. Cobertura inclui não publicação, indeterminação efectiva, idempotência, precisão fraccionária/grande, moeda obrigatória, recusa de nó de arredondamento, recusa foraQA, snapshot após edição, recuperação por nova autenticação API e recusa por outra conta.
Conferência visual dirigida no Edge do componente React real renderizado emSSR e do HTML produzido por createProjectDossierPrintHtml apenas para as novas linhas fiscais:0.0048, base0.03, taxa16, MZN e rótulos legíveis, sem corte visível. O invólucro de inspecção suprimiu apenas a abertura automática da janela de impressão numa cópia privada do HTML; não alterou o exportador. Não é prova de novo PDF nativo guardado nem novo percurso browser de histórico no formulário completo. API/histórico/relatório imutável e os modelos usados pelo ecrã/CSV/dossier têm provas dirigidas. A conta técnica QA ultrapassaRLS; recusas demonstram política da aplicação, não nova certificaçãoRLS. Provas aceites das10páginas, valores, CSV e recuperação/exportações de13f68f1b reutilizadas, sem repetição.
Provas privadas emoutputs/simulator-continuation-20261020/: fiscal-qa-receipt-v2.json, fiscal-qa-tests.json, fiscal-qa-build.log, fiscal-qa-snapshot.json, fiscal-component-review.html e fiscal-report-review.html. Página/servidor temporários de inspecção encerrados. O recibo versionado desta continuação recebe a mesma reconciliação; a matriz existente recebe apenas adenda emAUD-SIM-INT02. Não se cria backlog paralelo.
Saldo e estimativa: o recorte agora autorizado — cadastro versionado, precisão/proveniência, resolução temporal QA, histórico e dados de relatório — está implementado e verificado nos limites acima;0h de engenharia identificada restante nesse recorte, revisão não incluída. As15–26h eram estimativa condicional anterior que incluía trabalho agora executado, não horas medidas nem estimativa ainda integralmente por consumir. AUD-SIM-INT02 permanece parcial para disponibilização fiscal de produto e cobertura integral; os outros sete itens não são reabertos. Pagamento, declaração, classificação automática e outros impostos exigem âmbito/estimativa próprios. Não declarar o simulador fiscal concluído.
Integração: commit desta candidata fica apenas na branch codex/simulator-integrated-review, descendente de0fafd348, sem push/merge emmain. A autorização anterior de integração de13f68f1b não é reutilizada para esta candidata fiscal. Após revisão consolidada, uma decisão específica de integração continua separada de cadastro/publicação de regras. Esta preparação não muda o destino, papéis activos ou dados activos. Não retirar a guarda QA ou mudar o ambiente do activo para contornar a separação; preparar o consumidor de produto e a sua disponibilização apenas no âmbito que vier a ser autorizado.
Revisão consolidada de83d2f97d — âmbito, demonstração e operação
Pedido da Tempo: consolidar a revisão, reutilizando provas aceites e demonstrando apenas o percurso completo pela interface que faltava. O exemplo aritmético não prova incidência nem aplicabilidade a qualquer operação; a Tempo não conferiu o ficheiro local nem validou juridicamente as conclusões transcritas. Esta revisão mantém essa distinção.
| Elemento da regra | Âmbito documentado / fronteira |
|---|---|
| Operação e base | Operação interna onerosa por sujeito passivo nessa qualidade, localização aplicável e base líquida já apurada: CIVA arts.1(1)(a),2,6 e15. Condições gerais e composição da base estão na ficha v1.2, com PDF/página/artigo. O código não classifica automaticamente uma pessoa ou operação. |
| Taxa e período | 16% no art.17(1) da Lei22/2022 republicada, eficácia01/01/2023; data de exigibilidade relevante nos arts.7 e17(2). Lei10/2025 efectiva01/01/2026 não altera art.17 na cadeia lida. A janela demonstrada do lote é2026; não é caducidade legal em31/12/2026. Isto é conclusão documental nos limites da cadeia consultada, não validação jurídica atribuída ao utilizador. |
| Excluído do primeiro lote | Preço já com imposto incluído/art.34, taxas reduzidas, isenções/listas, bases especiais, importações, digital/não residentes, deduções, crédito/reembolso, incentivos e outros impostos. Não se transforma base orçamental em base tributável. |
| Indeterminado | Operação sem enquadramento identificado; fonte/versão/parâmetro/contexto incompatível ou período fora da cobertura demonstrada. O enquadramento apenas declarado permanece declarado. Ausência de arredondamento automático não torna indeterminado o valor exacto deste percurso. |
| Valor versus apresentação | Decimal exacto guardado e reproduzido como texto, sem float, truncagem ou arredondamento implícito; moeda separada. Não é valor a pagar ou saldo de declaração. Precisão de um formato de pagamento/declaração será determinada nesse contexto, sem regra universal. |
**Lacuna concreta encontrada na revisão:**83d2f97d disponibilizava API QA e componente/relatório, mas não um ecrã de introdução das entradas que permitisse observar a sequência inteira. Acrescentou-se apenas a página protegida /management/investment/tax-rules/{id}/qa-review, exclusiva do alvo QA isolado, sob os mesmos controlos administrativos, autenticação/MFA e consulta de governação. Chama a API QA já existente, grava no histórico existente, recupera sem recalcular e lê o relatório guardado pelo seuID/hash. Não cria motor, schema, fonte ou regra nova e não expõe um cálculo fiscal público.
Exemplo completo efectivamente observado pela interface: base1000.03, moedaMZN seleccionada explicitamente, exigibilidade declarada2026-10-21 e declaração de operação interna à taxa geral sem excepção. Valor calculado160.0048, sem arredondamento; não prova de sujeição. Sequência observada: preencher → «Calcular e gravar no histórico QA» → execuçãofa6d17f2-5f47-4cb6-b8cb-40850c12505f concluída → recarregar a página, limpando o estado local/entradas → «Carregar histórico» → «Recuperar [mesmoID]» → «Consultar relatório guardado» → mesmo valor, base, moeda, data, regra/versão, fonte e contexto declarado. Relatóriod13e2ad5-3ba8-4d01-9d30-5815496da774, SHA2562e5e260f47ee5c849a34453fad248009e607ef8679dc56b7a1c58730f13e5c3b, igual ao hash do resultado guardado. Cálculo e gravação pertencem à mesma operação transaccional existente; não se inventa um segundo botão de gravação. A conta de ensaio ficou com uma única execução persistida.
O ensaio correu no Edge, no clonesimulator_fiscal_delta_20261021_test, porta local18579, com conta sintética própria e sessão/cookie separados. Durante a primeira autenticação a ligação da ferramenta perdeu-se. As duas reactivações comunicadas pelo utilizador não repuseram imediatamente navegadores no inventário, mesmo após reiniciar a sessão da ferramenta. Limitação da ferramenta; não falha do simulador. Mais tarde o inventário voltou a expor o Edge e retomou-se apenas o que faltava, por interacção DOM documentada. Foram observados início de sessão e segundo factor normais, entradas, cálculo/gravação, recarga, recuperação e relatório acima. A primeira edição de data não estava consolidada no controlo; a recusa não gerou execução no histórico. Conferiu-se histórico vazio antes da retoma, concluiu-se a edição da data por teclado e submeteu-se uma única execução concluída. Nenhuma guarda ou autenticação foi contornada. As provas anteriores de83d2f97d são reutilizadas; esta demonstração fecha somente a lacuna browser que faltava.
O novo ecrã passouTypeScript/build e1teste dirigido de rota/17asserções: redireccionamento para autenticação, página/props correctos para perfil autorizado, recusa de outro perfil e recusa foraQA. Mensagens de falha são portuguesas e o detalhe técnico fica na consola interna. O primeiro ensaio de rota antecedeu o build da página nova e encontrou ausência da entrada no manifest; após o build o teste passou. Não se reabriram os15testes aceites de83d2f97d, nem valores/CSV/paginação anteriores. A única lacuna adicional desta revisão ficou demonstrada. Provas privadas: fiscal-ui-journey-receipt-20261021.json, fiscal-ui-complete-20261021.txt, fiscal-ui-complete-20261021.jpg e fiscal-ui-report-20261021.jpg, na mesma pasta deoutputs. Conferência da BD somente por leitura para o novo exemplo: uma execução da conta, igualdade de hashes, regra emdraft, zero regras publicadas. Esta prova é de relatório guardado na interface; não se alega nova impressão/PDF nativo ou nova sessão browser, que não foram pedidos/repetidos.
Procedimento de integração — decisão de código
- A Tempo revê83d2f97d e o delta desta revisão, identificando o commit exacto que autoriza integrar. A autorização anterior de13f68f1b não cobre estes commits. Esta consolidação inclui a demonstração browser concluída e as limitações expressas, sem a converter em validação de aplicabilidade fiscal.
- Conferir a ancestralidade e o delta contra
origin/main; a consulta remota desta revisão confirmoumain em13f68f1b. Se continuar ancestral da candidata, integrar por avanço directo após autorização; se houver alterações posteriores, resolver apenas os conflitos reais e verificar os deltas afectados. Não reexecutar o conjunto aceite sem motivo concreto. - Enviar a referência autorizada a
maindesencadeia disponibilização automática na homologação. Conferir a revisão efectivamente servida e a disponibilidade do portal. Não executar cadastro fiscal, transição de regra ou migration por fazer merge do código. Este delta não tem migration. - Guardar os identificadores da decisão, commit, build servido e resultado da disponibilização no mesmo registo. Para reversão de código, preservar o contrato de leitura dos snapshots e históricos; não eliminar tabelas/registos nem reescrever resultados antigos. As guardasQA permanecem activas neste consumidor.
Publicação e activação — decisões distintas da integração
- Cadastro no destino exige autorização específica para escrita, backup/restauro confirmado e acção autenticada. Usar a API de governação existente com a referência real da fonte aceite e actores designados; não copiar as fixtures sintéticas QA para o destino nem mudar o ambiente do activo para executar o comandoQA.
- A governação existente usa
POST /api/v2/investment/admin/tax-rules/{id}/{action}, comversion_noactual eevidence:submit→review→approve→publish, pelos papéis já configurados. As verificações actuais de autoria/revisão/aprovação/publicação, versão da fonte, vigência e sobreposição conservam-se; não se introduz nesta revisão um novo papel ou uma certificação genérica da fonte. Corrigir uma versão após revisão faz-se por nova versão e histórico, sem edição retroactiva de uma publicada. - Efeito real da publicação: a versão passa a ser elegível no resolvedor/API de parâmetros publicados. Isso pode disponibilizar o parâmetro aos consumidores dessa API; não é um simples rótulo documental. Ainda assim, não liga por si este cálculo QA ao motor público nem valida incidência de uma operação.
- Limite concreto de83d2f97d: o consumidor novo é QA, exige regra em
drafte guarda de base isolada. O job público de planeamento não consome automaticamente uma regra publicada como cálculo fiscal. Portanto, não há neste commit um interruptor de activação do lote em produção. Uma decisão futura de activação deve identificar o consumidor de produto, regra/versão, âmbito/período, comportamento de indeterminação e data de exposição. Não remover a guardaQA nem publicar a regra para simular que esse consumidor já existe. A publicação de documento, o cadastro, o merge e a activação não se confundem.
Desactivação e preservação histórica
- Para uma regra já publicada, a transição autenticada
.../{id}/suspend, com versão corrente e evidência, altera o estado parasuspended. O resolvedor existente selecciona apenaspublished, pelo que deixa de escolher essa versão para novas resoluções. Arquivo posterior usaarchivequando aplicável. Não se ensaiaram estas transições sobre a regra real deste lote, que continua emrascunho; reutiliza-se o comportamento documentado/testado da governação existente. - Suspender não apaga snapshots, relatórios, fontes ou eventos. A consulta de uma execução antiga lê o snapshot preservado, não volta a resolver com a taxa actual. Uma correcção ou substituição gera nova versão/execução com proveniência própria; nunca substitui silenciosamente o resultado antigo.
- Não existe transição genérica de
suspendedparapublishedno fluxo actual. Uma retoma deve seguir uma versão elegível e as transições previstas, sem actualização directa de estado porSQL. - Para parar este ensaio QA de rascunho basta encerrar o servidor de ensaio ou retirar a sua exposição no ambienteQA; não se publica/suspende artificialmente o rascunho para o desligar. Os registos persistidos mantêm-se para consulta. Qualquer futuro consumidor público deve definir a sua desactivação de novas execuções preservando essa leitura histórica.
**Saldo:**83d2f97d conserva o fecho técnico QA aceite; revisão consolidada com âmbito, exclusões, procedimento e percurso de interface demonstrados no recorte definido. Não há preparação técnica adicional identificada para fechar esta revisão; decisões de integração e publicação/activação permanecem distintas. AUD-SIM-INT02 continua parcial para produto fiscal integral; não declarar o simulador fiscal concluído. Sem merge, publicação, activação ou alteração do activo.13f68f1b mantém-se independente.
Proposta única — consumidor IVA no simulador da homologação (21/10/2026)
Conclusão da leitura do código em d186f942: falta um delta de produto delimitado; integrar apenas83d2f97d/d186f942 e publicar uma regra não disponibiliza o percurso fiscal ao utilizador do simulador. A revisão QA anterior permanece concluída. Esta proposta identifica trabalho novo de ligação ao produto, sem reabrir as provas aceites, executar integração ou activar regras.
Funcionalidade proposta: na etapa fiscal do simulador existente, escolher «IVA geral sobre base líquida», indicar base tributável decimal, MZN, data de exigibilidade e declarar o contexto de operação interna à taxa geral sem excepções. Calcular e gravar pela execução existente; recuperar a execução e consultar/exportar o seu relatório preservado. Mostrar versão/fonte, contexto declarado e valor exacto separado da apresentação monetária. Não usar automaticamente a base orçamental nem a taxa introduzida no planeamento. A consulta do histórico mantém os requisitos actuais de conta e correio verificado; a execução/consulta individual mantém os controlos actuais de proprietário, organização ou token anónimo, conforme o percurso já suportado, sem prometer histórico de conta ao anónimo.
Delta exacto de código a implementar na branch separada
| Ponto actual verificado | Alteração delimitada / reutilização |
|---|---|
simulation-form.tsx::runSimulation termina quando o modo não é custom_planning; a consulta de parâmetros não calcula. |
Ligar o consumidor IVA à mesma etapa, validação, recuperação de falhas, idempotência, acompanhamento e histórico. Expor disponibilidade vinda do servidor; manter o planeamento personalizado identificado separadamente. |
StoreSimulationRequest/SimulationController::store recebem base/taxa/redução. |
Acrescentar contrato discriminado para o consumidor, com base decimal textual, moeda, data e contexto declarado. Reutilizar autorização de organização, identidade/token e limites existentes. O cliente não escolhe taxa, definição ou fonte executável; pedidos fora do contrato são recusados com mensagem clara e entradas preservadas. |
SimulationFiscalQaPreview, createFiscalQaPreview e ramo de RunSimulation exigem QA isolado e regra emdraft. |
Criar adaptador para regra publicada, reutilizando o resolvedor temporal e avaliador existentes e o núcleo decimal exacto. Conservar as guardas e o percurso QA. Resolver no servidor, conferir a versão autorizada e congelar regra/definição/fonte/parâmetro/contexto no snapshot; gravar através da mesma transacção, fila, idempotência e histórico. Não aceitar snapshot fiscal fornecido pelo cliente. |
resolvePublishedForPeriod existe, mas a resposta de parâmetro não fornece um snapshot executável completo. |
Recuperar no servidor a versão seleccionada pelo resolvedor e a definição correspondente, verificando elegibilidade publicada e correspondência temporal no mesmo limite transaccional da admissão. Não reconstruir o resolvedor nem inferir a regra pela taxa mais recente. |
| Não foi identificado interruptor deste consumidor nos serviços/configuração fiscal. | Acrescentar configuração específica, desligada por omissão, com consumidor, ID/versão autorizada e cobertura2026. Aplicar a verificação no servidor e expor o estado ao formulário. É escolha técnica proposta para executar as decisões separadas da Tempo, não novo papel organizacional. Não reutilizar o interruptor de outro módulo nem mudarAPP_ENV/guardasQA. |
fiscal-qa-preview.ts, CSV e dossier reconhecem apenas fiscal_rule_qa_preview; rótulos dizemQA/draft. |
Suportar explicitamente o novo tipo de snapshot publicado nos mesmos componentes/relatórios/exportações, preservando rótulos e leitura dos snapshots QA antigos. Garantir valor exacto textual e proveniência; nenhuma migração de resultados históricos ou arredondamento monetário silencioso. |
Modelos, políticas, governação, tabelas de execução/relatório e contrato genérico de resultados já existentes são reutilizados. Não se identifica necessidade de nova tabela fiscal ou migration para esta ligação; configuração e novo discriminador de cenário são o delta proposto. Novas entradas geram nova execução, sem converter uma execução fiscal antiga num cenário percentual editável.
As três operações da mesma proposta
- Integração do código. Implementar o delta acima na branch fiscal, incluindo leitura histórica compatível e controlo desligado. A candidata a integrar terá de incluir esse delta:
d186f942, isoladamente, ainda é QA. Após revisão da referência exacta pela Tempo, integrar emmain e confirmar a revisão servida pela disponibilização automática da homologação. Não cadastrar/publicar regra no arranque nem nas migrations. Resultado observável: código instalado, consumidor indisponível para novas execuções enquanto desligado; restantes percursos continuam disponíveis. Reversão por código compatível com os snapshots existentes, sem apagar dados. - Publicação da versão da regra. Com autorização de escrita no destino, backup/restauro confirmado e actores autenticados já designados, cadastrar a versão com a fonte real aceite, citações e metadados da ficha; não copiarUUIDs, utilizadores ou estados artificiais do QA. Usar os endpoints existentes de cadastro e
.../tax-rules/{id}/{action}, comversion_noeevidence, na sequênciasubmit→review→approve→publish, pelos papéis existentes. Registar o ID/versão real publicado. Publicar torna o parâmetro elegível na API existente, inclusive para quem já a consulte; não habilita o novo consumidor. Não exigir nova certificação genérica da fonte oficial. - Activação do consumidor. Por decisão específica da Tempo, configurar a ligação ao ID/versão publicado autorizado e cobertura2026, habilitar o consumidor na homologação e aplicar a configuração efectiva do servidor. Confirmar estado disponível na etapa fiscal e executar somente a prova da ligação nova: entrada no simulador normal → versão publicada correcta → gravação → recuperação/relatório, mais recusa fora do âmbito e desligamento. Reutilizar as provas aceites de aritmética decimal, CSV, recuperação e paginação. Registar decisão, commit/build, regra/versão, configuração e momento da activação. Resultado entregue à Tempo: funcionalidade utilizável no portal, com esses limites; não apenas código instalado.
Estas operações são autorizáveis separadamente dentro desta única proposta. A autorização de13f68f1b não autoriza esta integração fiscal, publicação ou activação. Não foram executadas nesta análise. A sequência é código compatível desligado → versão publicada → consumidor ligado; não se atribui activação à mera publicação.
Âmbito, indeterminação e suspensão
Reutiliza-se integralmente o âmbito fundamentado da ficha v1.2: IVA geral16% sobre base líquida já identificada de operação interna, MZN, exigibilidade na cobertura demonstrada01/01/2026–31/12/2026. A taxa tem eficácia documental desde01/01/2023; o fim da cobertura2026 é limite do primeiro consumidor, não revogação/caducidade da norma. Enquadramento declarado é mostrado como declarado; o cálculo não certifica incidência. Fonte/versão/parâmetro/contexto insuficiente, conflito temporal ou falta de enquadramento produzem resultado indeterminado, nunca zero/taxa actual como substituto. Fora da cobertura ou consumidor desligado, explicar a indisponibilidade para nova execução e preservar as entradas.
Excluem-se preço com IVA incluído, taxas reduzidas, isenções/listas, bases especiais, importações, digital/não residentes, deduções/crédito/reembolso, incentivos, apuramento/declaração/pagamento e outros impostos. Não ampliar cobertura nem presumir arredondamento. Valor calculado exacto e apresentação monetária permanecem distintos.
Suspensão operacional proposta: desligar a configuração impede novas admissões pelo servidor e informa o formulário, sem bloquear recuperação, relatórios ou exportação de execuções já guardadas. Suspensão da regra existente: acção autenticada suspend, versão corrente e evidência; o resolvedor deixa de a seleccionar. Sem troca silenciosa por outra versão. A admissão deve fixar atomicamente a elegibilidade e o snapshot; execuções já admitidas conservam essa versão e podem concluir, identificadas pelo momento de admissão, mesmo se a fila terminar depois da suspensão. Novos pedidos ficam impedidos; repetição idempotente de pedido já admitido recupera a mesma execução. Este contrato de concorrência é escolha técnica explícita desta proposta, a verificar no delta, não comportamento já demonstrado pelo código QA.
Históricos não são recalculados, apagados ou renomeados como se tivessem usado a versão nova. A suspensão fica no registo de governação, sem alterar retroactivamente o conteúdo/hash do relatório. Retoma exige versão publicada elegível e ligação/activação autorizada; não existe transição directa de suspended parapublished no fluxo actual. Não eliminar a leitura de snapshots fiscais ao reverter código.
Verificação nova estritamente necessária: contrato público e permissões existentes; impossibilidade de executar desligado ou com versão não publicada; correspondência temporal/âmbito e precisão na ligação; cenário publicado na interface/histórico/relatório/exportação; suspensão versus admissão concorrente e repetição sem duplicação; preservação da leitura histórica e do modo personalizado. Não repetir as10páginas, valores/CSV ou ensaios QA aceites. Não se cria nova matriz/backlog; AUD-SIM-INT02 conserva o estado parcial do simulador fiscal integral e referencia esta delimitação. As fontes e provas existentes sustentam a proposta; não se atribui ao utilizador conferência local ou validação jurídica.
Consumidor publicado implementado no simulador normal — fecho QA de21/10/2026
Autorização: instrução expressa da Tempo para implementar2ced7b79 em QA, sem nova proposta, integração emmain, publicação de regra real ou activação na homologação. O delta descrito acima está agora implementado. O fecho é da ligação deste único consumidor; mantém âmbito/exclusões da ficha v1.2 e não encerra o simulador fiscal integral.
Percurso utilizável: /simulador-fiscal → percurso habitual → etapa «Operação fiscal» → «IVA geral sobre base líquida» → base decimal textual, moeda explicitamente seleccionada, exigibilidade e declaração de contexto → «Calcular IVA e gravar». O resultado aparece no próprio simulador e no histórico existente. Pode recuperar-se sem recalcular; relatório, referência/hash e exportações usam o mesmo snapshot. Não é necessário acesso à administração fiscal para calcular. A consulta de parâmetros e o planeamento personalizado conservam os seus percursos e rótulos próprios. A base de orçamento e a taxa manual não são usadas como entradas implícitas deste IVA.
Implementação e fronteiras efectivas
StoreSimulationRequesteSimulationController::storedistinguemfiscal_rule_publisheddo planeamento. O servidor recebe apenas entradas declaradas, não taxa/regra/versão/snapshot executável fornecidos pelo cliente; valida formato decimal textual, MZN, data e contexto. Falta de declaração de enquadramento grava indeterminação com valor nulo, nunca zero. Campos inválidos/período fora2026 são recusados com mensagens portuguesas e entradas preservadas.SimulationPublishedFiscalselecciona o ID/versão configurado no servidor, exige estado publicado e âmbito do lote, reutilizaSimulationTaxParameterResolvereSimulationTaxRuleExpression, e congela a proveniência antes da fila.SimulationFiscalSnapshotpartilha a representação decimal com o adaptador QA, cujas guardas não foram removidas. Não há regra fiscal activada por importação ou arranque.SimulationExecutionconsulta a chave idempotente antes de verificar nova admissão. Assim, desligamento/suspensão não impedem recuperar o mesmo pedido já admitido. Nova chave exige consumidor ligado e versão publicada elegível; mudar entradas com a mesma chave dá conflito. A interface conserva a chave do pedido fiscal concluído para que repetir o mesmo cálculo não crie uma execução adicional. Novas entradas produzem nova chave/execução.- Bloqueios consultivos transaccionais partilhados na admissão e exclusivos nas transições de governação/fonte serializam suspensão/revogação e admissão. Não se usa
SELECT FOR SHAREna regra pública: poderia exigir uma política de alteração, contrariando as permissões existentes. A decisão de usar bloqueios consultivos é escolha de implementação, não nova exigência da Tempo. Não se alteraram políticas/grants nem se acrescentaram papéis de produto. RunSimulationprocessa o snapshot fiscal já admitido, sem resolver outra taxa/versão e sem reconsultar a activação. Guarda resultado, relatório e proveniência nos modelos existentes. Notas internas de revisão e identificadores dos funcionários ficam fora da proveniência devolvida pelo novo consumidor. Snapshots QA antigos conservam os seus rótulos/estado originais.- O leitor de resultados do simulador foi adaptado ao contrato fiscal: o leitor aritmético anterior marcava o novo snapshot como inconsistente e desactivava exportação/conversão. Agora reconhece valor fiscal e indeterminação coerentes, e recusa divergência entre valor calculado e apresentação. CSV e dossier encaminham o novo tipo pelos componentes existentes; não se reescreveram os exportadores nem se repetiram provas aceites de paginação/valores.
- Configuração nova e desligada por omissão:
INVESTMOZ_IVA_CONSUMER_ENABLED=false,INVESTMOZ_IVA_CONSUMER_RULE_ID=eINVESTMOZ_IVA_CONSUMER_RULE_VERSION=0, documentadas em.env.example./api/v1/fiscal-consumerinforma a disponibilidade sem cache; o servidor continua a exigir autorização na execução, independentemente do estado previamente visto no ecrã. A interface actualiza disponibilidade após uma tentativa, preservando entradas quando encontra suspensão. Configuração incompleta não escolhe outra regra automaticamente.
Provas novas, sem reabrir o conjunto aceite
Oito testes dirigidos deAPI/serviço,75asserções, passaram no clone isolado simulator_fiscal_checks_20261021_test, com transacções revertidas: ligação publicada, identidade/propriedade, token anónimo, idempotência/conflito, histórico/relatório/hash, contexto/fonte insuficientes, contrato/cobertura, suspensão/desligamento e trabalhador congelado, planeamento ainda disponível, configuração inválida e bloqueios de admissão. Um papel PostgreSQL temporário sem superutilizador/bypassRLS comprovou execução com a política pública de leitura, sem acesso aos eventos da governação ou alteração da regra; papel/grants de ensaio foram revertidos com a transacção. Uma segunda ligação comprovou que os bloqueios exclusivos da regra/fonte não atravessam a transacção de admissão. Dois testes frontend dirigidos ao novo tipo publicado passaram: encaminhamento coerente para ecrã/CSV/dossier e aceitação da indeterminação/recusa da apresentação divergente. TypeScript, build ePint passaram. Aviso do build sobre optimização opcional de fontes/fontaine não impediu a compilação.
Observação no Edge, formulário normal: porta18580, clone simulator_fiscal_delta_20261021_test, conta sintética de utilizador comum167, sem papéis fiscais administrativos. A fixture publicada é a versão sintética2 de IVA-GERAL-BASE-LIQUIDA, ID01a15ddc-b0c5-727f-bb24-d806a69bd1f5, para não substituir o rascunho QA anterior; fonte/actores sintéticos só neste clone. A governação existente foi usada na preparação da fixture. Não houve publicação na homologação nem declaração de aprovação jurídica da regra real.
- Observou-se inicialmente o consumidor desligado e o botão indisponível. Habilitou-se somente a fixture local guardada contra qualquer outra base.
- Base1000.03MZN, exigibilidade2026-10-21, sem declaração de contexto: execução
53663785-2e5d-4be2-8a05-c0c96a57896d, resultado indeterminado, entradas conservadas e relatório guardado. A mesma base/data/moeda com declaração criou5fa778f1-413e-4643-8c67-1b93ab290da7, valor160.0048. Repetir o botão manteve essas duas execuções, sem terceira duplicada. - Reteve-se somente a fila QA dedicada
fiscal-consumer-qa-20261021. A base1001.03 admitiube1e8399-ea95-4aa7-9ac0-7fa392932ac1às09:52:11.782758UTC. Suspendeu-se a fixture pela governação às09:52:16UTC, ainda com essa execução emqueued e snapshot publicado congelado. O trabalhador realqueue:work database --queue=fiscal-consumer-qa-20261021 --once --tries=1 --timeout=30concluiu-a depois da suspensão, com160.1648 e a mesma versão2. Nenhuma outra fila foi consumida. - Nova entrada1002.03 foi recusada: «A versão autorizada de IVA não está disponível para novas execuções. Os históricos foram preservados.» A base1002.03, data, moeda e declaração continuaram no ecrã; não houve quarta execução. Após recarga completa, recuperaram-se pelo histórico tanto o resultado calculado como o indeterminado. Ambos mostraram o snapshot original, sem alertas de inconsistência, com CSV disponível. O ficheiro não foi descarregado novamente; a implementação e as provas aceites do exportador foram reutilizadas.
- Conferência por leitura: exactamente3execuções da conta, todascompleted; hashes de resultado/relatório iguais nas três; zero trabalhos pendentes na fila dedicada. O relatório da execução que concluiu após suspensão é
5e416a48-db07-449b-8eae-aa51a1538f04, SHA256997f026665e586c662ae574fd2ff7f62e0254819adb26aea920575e47e0490a3. A fixture permanece suspensa e a configuração local foi reposta emdesligado; os históricos ficam acessíveis.
Provas privadas em outputs/simulator-continuation-20261020: published-consumer-tests.txt, published-consumer-journey-receipt.json, published-consumer-calculated-ui.txt/.png, published-consumer-suspended-ui.txt, published-consumer-recovered-ui.txt/.png e published-consumer-indeterminate-recovered-ui.txt. O primeiro acesso ao separador antecedeu o arranque do servidor local e apresentou ligação recusada; após arranque normal prosseguiu-se. Não é evidência de falha do simulador. Não se repetiram as10páginas do PDF nativo nem o conjunto aceite de83d2f97d/13f68f1b. A aritmética do exemplo demonstra a ligação e preservação do resultado, não a aplicabilidade fiscal a qualquer operação.
Procedimento único das três operações — agora executável após decisão
- Integrar código: a Tempo identifica a referência exacta desta candidata na branch
codex/simulator-integrated-review. Integrar emmain apenas após decisão; o envio desencadeia disponibilização automática na homologação. ManterINVESTMOZ_IVA_CONSUMER_ENABLED=false; não executar fixture, comandoQA ou cadastro fiscal no deploy. Confirmar build servido e aplicação; aplicar o procedimento habitual de recarga da configuração e reinício de trabalhadores persistentes, se existirem, antes de activar o novo tipo de trabalho. Não há migration neste delta. A leitura dos snapshots deve permanecer em qualquer versão de reversão; desligar o consumidor é preferível a voltar a um build que desconheça os históricos novos. - Publicar versão real: com autorização de escrita, backup/restauro confirmado e acção autenticada, reutilizar a fonte real aceite e os actores/papéis existentes. Cadastrar a versão fundamentada e usar
POST /api/v2/investment/admin/tax-rules/{id}/{action}, comversion_noeevidence, emsubmit→review→approve→publish. RegistarID erule_versionpublicados. Não copiar a fixture/versão2/actoresUUID deste ensaio para homologação. Se a fonte já estiver cadastrada correctamente, reutilizá-la; não exigir nova certificação da credibilidade oficial. A publicação disponibiliza parâmetros naAPI existente, mas o consumidor continua desligado. - Activar consumidor: por decisão específica da Tempo, preencher
INVESTMOZ_IVA_CONSUMER_RULE_ID=<ID real autorizado>eINVESTMOZ_IVA_CONSUMER_RULE_VERSION=<rule_version autorizada>; só então definirINVESTMOZ_IVA_CONSUMER_ENABLED=true. Aplicar a configuração pelo procedimento operacional existente (php artisan config:cachequando se usar cache de configuração; recarregar processos persistentes conforme o alojamento). Confirmar/api/v1/fiscal-consumere a etapa fiscal do simulador, registando decisão, commit/build, ID/versão e instante de exposição. Não usarversion_node concorrência como se fosserule_version. O servidor recusa outra versão em vez de escolher a mais recente silenciosamente.
Suspender/desactivar: repor o interruptor emfalse e aplicar a configuração impede novas admissões; para retirar a elegibilidade da própria regra usar a transição existente suspend, com versão corrente/evidência e actor autorizado. Pedidos já admitidos concluem pelo snapshot; repetição idempotente recupera-os. Histórico/relatório/exportação continuam acessíveis sem novo cálculo, publicação ou activação. Retoma segue uma versão publicada elegível e activação explícita, nuncaSQL directo sobre o estado suspenso. A janela2026 mantém-se um limite de cobertura, não data de caducidade legal.
Saldo: ligação funcional do primeiro consumidor fechada em QA, pronta para revisão e decisão sobre as três operações; sem outra preparação genérica identificada. AUD-SIM-INT02 permanece parcial para cobertura fiscal integral. As estimativas anteriores não constituem horas ainda por executar deste delta já concluído. Main local continua em13f68f1b; sem merge/push, publicação real ou activação na homologação. A Tempo não conferiu os ficheiros locais nem validou juridicamente as fontes nesta execução.
Disponibilização autorizada pela Tempo —21/10/2026, execução em curso
A Tempo autorizou a implementação após o fecho da candidata226fd308 e a identificação das três operações. A integração foi executada por avanço directo de13f68f1b para 226fd308dd45d2805ef4678b20ca4398d7fef6c6, seguida de envio aorigin/main. A disponibilização automática foi conferida através da camada HTTP autenticada: /build/revision.json serve essa revisão emmain, build de21/10/2026 às10:07:12.300278UTC, manifest SHA256 d524c957dc95e92fcb6eb0d802b9df845743466bd51e398a485bd5ba3d7e3d8f. /api/v1/fiscal-consumer responde200 com enabled:false e cobertura2026. A primeira leitura sem autenticação da camada HTTP foi recusada; a conferência seguinte utilizou o acesso já disponibilizado, sem divulgar credenciais. Não se repetiram provas aceites.
Saldo das operações: integração e disponibilização do código concluídas; publicação da versão real e activação ainda não executadas. A versão a cadastrar/publicar é IVA-GERAL-BASE-LIQUIDA, rule_version:1, da ficha documentalv1.2, vinculada ao exemplar da Lei22/2022 com hash ea1b0dc6f5cf6e595f6d9a19e7042f398999e0087caef1785f6e8fac571b5f53; oID real do destino ainda não foi obtido. Não usar a fixtureQA deversão2 ou os seus actores. A autorização de disponibilização não é apresentada como validação jurídica do utilizador.
Dependência operacional concreta: a sessão SSH anterior terminou comfalha de ligação; autenticação não interactiva no destino foi recusada. Pediu-se a reabertura do mecanismo existente outputs/investmoz-git-delivery-20261020/resume-git-session.py, com autenticação exclusivamente na consola local. Está preparado um inventário remoto somente por leitura para conferir os papéis/actores existentes, fonte, versão e estado do consumidor. Ainda não foi submetido, por falta da sessão autenticada. Backup/restauro e acção autenticada da governação serão confirmados antes de escrever dados fiscais ou alterar a activação. Não há nova pendência de fundamentação, nova ronda QA ou pedido de autorização para as operações já autorizadas.
Recibo privado da integração em outputs/investmoz-iva-disponibilizacao-20261021/integration-receipt.json no checkout principal; o recibo consolidado existente replica o estado. Nenhuma escrita fiscal, importação da fixture ou activação no destino foi executada nesta passagem. A continuação começa na autenticação remota e nas duas operações restantes, sem voltar a integrar ou preparar a candidata.
Correcção QA da manutenção fiscal por um responsável — decisão Tempo de21/10/2026
Origem e decisão: a obrigação de quatro pessoas foi localizada em SimulationTaxRuleGovernance::transition e nos trêsCHECKs de 2026_10_03_170000_create_simulation_tax_rule_governance.php, incorporados por e65cb269 (06/10/2026, «varias alteracoes»). A nota de simulator-evolution-progress.md descreve «autor distinto de revisor, aprovador e publicador» como implementação. Não foi encontrada no acervo consultado uma decisão expressa da Tempo ou um requisito aplicável que imponha essa separação ao cadastro fiscal. Classificação: escolha de implementação, não regra organizacional aprovada. A autoria do commit não equivale à aprovação da condição. A Tempo agora instruiu expressamente a sua remoção neste fluxo e indicou nala@tempo.co.mz como responsável. Não se criam quatro designações nem uma excepção artificial limitada à primeira regra; a administração autorizada pode manter os parâmetros fiscais, sem extensão à independência acordada noutros processos.
O que ficou corrigido em QA:
- A administração existente, incluindo o perfil administrativo já autorizado comMFA recente, pode cadastrar/manter parâmetros sem preencher quatro listas específicas. As listas existentes continuam disponíveis para atribuições específicas. Utilizadores comuns e perfis apenas de auditoria não adquirem manutenção fiscal; autenticação, verificação de email eMFA permanecem. O investidor continua a utilizar o simulador pelas permissões próprias de execução/consulta; a manutenção não é requisito de utilização.
- O mesmo responsável pode percorrer
draft→submitted→reviewed→approved→published, conservando osID reais em cada etapa. Retiraram-se as comparações de identidade no serviço fiscal e nos respectivosCHECKs; mantiveram-se evidência, datas, estado, versão, coerência da fonte, unicidade/sobreposição, bloqueios, RLS e eventos imutáveis. Não há alegação de revisão independente quando o actor é o mesmo. - Como o destino não tem a fonte deste lote cadastrada, o percurso fiscal permite registá-la em
POST /api/v2/investment/admin/tax-rule-sources: metadados existentes, origem oficial identificada, citação eSHA256. Regista a aceitação oficial já decidida pela Tempo em08/10/2026, responsável e momento, comlegal_opinion:falseeindependent_review:false. O estado geral da fonte permanecepending; o fundamentofiscal_acceptancepermite a sua utilização apenas na governação/resolução fiscal. Assim, não fica automaticamente validada para zonas ou outros processos, nem certifica juridicamente uma operação ou atribui parecer à Tempo. A regra deve referenciar o mesmo hash e versão. Cadastro de fonte não publica regra nem activa consumidor. - A mesma pessoa pode concluir essa curadoria fiscal sem inventar outro actor para «validar» a fonte oficial aceite. A condição normal da fonte fora deste percurso, as relações/validações de zonas, oportunidades e perfis mantêm-se. O novo fundamento explícito
fiscal_acceptancefica na fonte e na auditoria; o endpoint normal de zonas não permite marcar esse fundamento. Não se alteraram os fluxos com independência já acordada.
Esquema: 2026_10_21_130000_correct_fiscal_maintenance_actor_constraints.php foi ensaiada apenas na base QA isolada. O delta é explícito: retirar desigualdades de identidade dos trêsCHECKs fiscais; acrescentar o fundamento de aceitação fiscal à fonte; registar a responsabilidade única na aceitação fiscal da fonte; ajustar apenas a projecção pública/resolução fiscal para reconhecer esse fundamento com hash e versão correspondentes. A condição normal de validação independente da fonte não foi removida e o seu estado continua pending. A guarda recusa execução da migration foraQA. Nenhuma constraint de oportunidades, zonas, perfis ou outra tabela foi modificada. A reversão só é permitida em QA sem registos dependentes; quando existirem cadastros legítimos, recusa apagá-los ou voltar a impor uma condição que os invalide. Desligar novas execuções preserva os históricos.
**Verificação estritamente do controlo alterado:**6testes/86asserções passaram em simulator_fiscal_checks_20261021_test, em transacções revertidas. Cobrem administração existente por lista e por perfil/MFA recente, sem quatro designações; curadoria da fonte, cadastro e quatro etapas pelo mesmo actor; responsabilidade/hashes dos eventos; consulta e suspensão; consumidor ainda desligado; recusa de investidor, auditor, ausência/expiração deMFA, falta de evidência, hash/versão de fonte incoerente e versão optimista errada; imutabilidade; compatibilidade das constraints não fiscais; reversão vazia e recusa de reversão com dados dependentes; guarda contra alvo nãoQA. Não se executou uma simulação: a contagem de execuções foi preservada. Não houve testes novos de cálculo, decimal, exportadores, PDF, TypeScript ou build, pois esse código não mudou. Pint foi conferido nos ficheirosPHP do delta. Prova privada: outputs/simulator-continuation-20261020/fiscal-maintenance-actor-tests.txt. Os testes antigos de governação foram ajustados para retirar a expectativa de uma proibição agora expressamente revogada, preservando os casos de permissões, versões e histórico.
O esquema foi depois aplicado, apenas pelo caminho desta migration, ao clone persistente simulator_fiscal_delta_20261021_test, mantendo a guarda de isolamento. Prova por leitura antes/depois:2versões de regra,7eventos de governação,11resultados,11relatórios e8fontes com as mesmas contagens e hashes de conteúdo. Na comparação da fonte exclui-se apenas a coluna nova, que ficaNULL nos registos anteriores; nenhum conteúdo ou snapshot histórico foi reescrito. Prova privada fiscal-maintenance-schema-proof.json na mesma pasta. O clone QA está, assim, com o controlo aplicado para revisão; a base activa e os seus actores não foram alterados.
Estado real do destino: a dificuldade de introduzir o comandoSSH foi resolvida abrindo directamente a consola habitual; a autenticação foi feita pelo utilizador e a sessão ficou pronta. A leitura do vhost identificou o directório servido /var/www/html/teste-investidor.tempo.co.mz/current, que aponta para a release226fd308; a cópia anterior conservada na raiz não é o consumidor servido. Foi confirmado por leitura que nala@tempo.co.mz existe (ID15), email verificado, MFA configurado e perfil de superutilizador existente; não foi criada conta ou alterado perfil. Não se confunde matrículaMFA com sessão autenticada recente: as acções de cadastro continuam a exigir a autenticação normal do responsável.
O backup/restauro anterior à escrita ficou comprovado em21/10/2026 às10:18:00UTC: cópia consistente por snapshot de teste_investidor, arquivo privado /var/backups/investmoz/iva-rollout-20261021_101750/database.dump, SHA256 4e972c028fbe70c347c518ba86fe7e293093b7c81278ac4d64a077bf3e5325b7,4.584.693bytes; restauro isolado em iva_rollout_20261021_101750_test, acesso público à base revogado. Contagens e hashes canónicos das171tabelas coincidiram. A configuração anterior ficou protegida na mesma pasta. Isto comprova backup/restauro, sem ensaiar ou escrever os parâmetros no activo. A primeira validação local do cabeçalho do arquivo usava texto inadequado e foi corrigida para o formatoPGDMP; a segunda operação completou o restauro e a comparação. Não é falha do simulador.
Procedimento actualizado das três operações, sem quatro responsáveis obrigatórios
- Código e controlo de esquema: a revisão226fd308 já está integrada e servida. A presente correcção de governação fica na branch QA para revisão; não foi enviada amain. O delta inclui o esquema acima, cuja aplicação no destino deve acompanhar a referência exacta do código, por operação técnica autenticada e combackup/restauro actualizado conforme o estado nesse momento. A migration protegida é o ensaioQA, não um comando a executar contra a base activa. Conservar os históricos e o consumidor desligado durante a aplicação do controlo; não usar o deploy para cadastrar/publicar dados. Não voltar a integrar226fd308 nem repetir as provas de cálculo.
- Fonte e versão fundamentada: o responsável real indicado pela Tempo autentica-se normalmente, comMFA. Reutiliza a fonte aceite se já existir; caso contrário, cadastra-a pelo endpoint fiscal acima, com exemplar/hash/citação reais. Cadastra
IVA-GERAL-BASE-LIQUIDA,rule_version:1, conforme fichav1.2 e âmbito/exclusões2026. A mesma conta autorizada concluisubmit→review→approve→publish, sempre comversion_nocorrente e evidência fiel: manutenção técnica autorizada, não parecer jurídico nem revisão independente. Registar oID real; não usar a fixtureQA deversão2 nem contas sintéticas. Não é preciso criar quatro designações. - Activação do consumidor: permanece separada da publicação. Aplicar a ligação aoID e
rule_versionreais autorizados e o interruptor de activação pelo procedimento já definido, conservando cálculo sobre base declarada como estimativa, sem apuramento final do imposto a pagar. Conferir somente a revisão/regra efectivamente servidas e o delta no destino. Desactivar o consumidor ou suspender a regra recusa novas admissões, preservando as já admitidas, históricos e relatórios.
Saldo actual: controlo corrigido e verificado emQA, fontes e funcionamento do cálculo não reabertos; sem nova publicação ou activação na homologação. A referência servida continua226fd308 e o consumidor desligado. A correcção não foi aplicada ao esquema activo. A indicação do responsável e a autorização operacional não são tratadas como conferência de ficheiros locais ou validação jurídica da Tempo. Esta actualização substitui a indicação anterior de que a simples falta de quatro listas configuradas bloqueava obrigatoriamente a disponibilização.
Execução autorizada da correcção fiscal — 21/10/2026
A Tempo autorizou incorporar4a4d1212 e concluir apenas as operações pendentes. A correcção foi integrada emmain; a equipa integrou entretanto d3fe8a02, que inclui4a4d1212 e conserva o mesmo código fiscal. A revisão efectivamente servida, conferida em /build/revision.json, é d3fe8a02ec7f5dcd01984c4f4a1eba18b5a0cf19. Não se reinstalou226fd308.
Backup/restauro actualizado: /var/backups/investmoz/iva-rollout-20261021_104253, dumpSHA256 b37bf4aad0abd839bc81d70adf802535ad7738fabe75fda61d74f39dfc11e74b; restauro isolado iva_rollout_20261021_104253_test,171tabelas com contagens e hashes coincidentes. A operação técnica autenticada aplicou exclusivamente oDDL revisto, com registos/históricos e constraints alheias preservados. A migration protegida não foi executada na base activa nem teve a guarda enfraquecida. O contrato do executor foi actualizado apenas para essa migration, após registo da compatibilidade; a primeira disponibilização conservou a release anterior ao encontrar a alteração de esquema. A retoma usou o mesmo executor e não passou a executar migrations no destino.
Publicação e activação concluídas conforme recibo. O consumidor está activo. Não foram repetidas provas aceites do cálculo, precisão, exportadores ouPDF, nem importada a fixtureQA. A autenticação da infraestrutura não é identidade administrativa do portal. A conta Christiana/example.test reportada pelo utilizador pertence ao ensaio local anterior e não é usada no destino.
Mantém-se o procedimento único: 1) código/controlo do esquema, agora integrados; 2) cadastro das fontes reais com hash/citação e da versão1 IVA-GERAL-BASE-LIQUIDA, seguido das etapas autenticadas pelo mesmo responsável autorizado; 3) activação separada, ligando o consumidor aoID e versão publicados. Cobertura2026, operação interna geral sobre base líquida declarada emMZN; excluídos preços comIVA incluído, taxas reduzidas, isenções, regimes especiais, importações, digitais não residentes, deduções/créditos/reembolsos, incentivos, pagamento/declaração e outros impostos. O resultado é estimativa deIVA sobre a base declarada, não apuramento final a pagar.
Para suspender, desligar INVESTMOZ_IVA_CONSUMER_ENABLED e reiniciar graciosamente os workers pelo mecanismo existente, ou suspender a versão publicada pela governação autenticada, com version_no corrente e evidência. Novas admissões são recusadas; as já admitidas concluem com snapshot congelado, mantendo históricos e relatórios. Não apagar fontes, versões ou execuções para reverter a exposição. A autorização e o cadastro não constituem conferência local dos ficheiros pelo utilizador nem validação jurídica atribuída à Tempo. O recibo JSON existente regista a revisão, a regra e o estado efectivamente observados.
Recibo final das três operações: código4a4d1212 integrado e servido dentro ded3fe8a02; três fontes oficiais reais cadastradas comversão1, hashes e citações; regra IVA-GERAL-BASE-LIQUIDA, rule_version1, ID 01a15e1a-5338-700f-8a45-f87707d696a7, estado published, controlo optimista version_no5; autor/revisor/aprovador/publicador reais: conta indicada nala@tempo.co.mz, ID15. A sessão normal comMFA foi efectuada pelo utilizador numa página temporária de apoio ligada apenas a127.0.0.1; não se guardaram palavra-passe, códigoMFA ou cookies. Não há alegação de revisão independente ou parecer jurídico. A aceitação fiscal das fontes tem o fundamentoTempo08/10/2026; o estado geral permanecepending, sem validação automática noutros processos.
Activação separada aplicada em21/10/2026 às10:55:58UTC, alterando apenas as três chaves do consumidor. Ligação exacta aoID acima, rule_version1 eenabled=true; restante configuração preservada. /api/v1/fiscal-consumer confirmouenabled=true porHTTP200; a leitura do resolvedor, sem executar cálculo, confirmouIVA_GENERAL_RATE=16percent, mesmoID/versão/fonte no contextoMZN/internal_general_net de2026. Cinco eventos de governação; contagens de resultados/relatórios preservadas, sem simulações sintéticas no destino. O restauro de segurança e a configuração anterior estão conservados no arquivo privado identificado no recibo.
Suspensão concreta: configurar INVESTMOZ_IVA_CONSUMER_ENABLED=false e executar o reinício gracioso existente php8.4 artisan queue:restart na releaseactual como operador autorizado; ou POST /api/v2/investment/admin/tax-rules/01a15e1a-5338-700f-8a45-f87707d696a7/suspend, com version_no:5 enquanto corrente e evidência verdadeira de pelo menos20caracteres, pela administração autenticada/MFA. Não repetir a suspensão se o estado/versão já tiver mudado. Conservar a ligação e todos os registos; futuras retomas respeitam o estado da regra e o procedimento de versão aplicável, sem escolher automaticamente outra regra.
Diagnóstico da consulta IVA — correcção em QA,21/10/2026
O caso reportado identifica «Componentes fiscais e contributivas», IVA_GENERAL_RATE, período01/01/2026–31/12/2026 e «As condições publicadas não correspondem às respostas indicadas». É consulta de parâmetros, não execução do consumidor IVA. O utilizador não forneceu a moeda ou a operação originais; não se afirma que tenha seleccionadoUSD, omitido um campo ou indicado uma operação excluída.
Causa confirmada no contrato: o formulário envia fiscal_operation, sem operation ou currency; a versão publicada exige operation=internal_general_net e currency=MZN. A validação da consulta nem aceitava esses nomes canónicos. O resolvedor reduzia qualquer condição falhada a indeterminate_context; a interface mostrava apenas a frase genérica e o código interno. Esta restrição de ligação é escolha de implementação, não condição organizacional ou jurídica adicional da Tempo. O mesmo contrato reproduziu o estado no período anual reportado, independentemente de se presumir uma moeda no caso original.
Correcção delimitada: cada condição não satisfeita tem categoria, campo, valor recebido e critério esperado, ligados à versão e fonte. Distinguem-se campo em falta, formato inválido, operação/moeda fora do âmbito, versão que não cobre o período e configuração do sistema. Quando não existe versão elegível visível e a evidência não permite separar ausência de cobertura de indisponibilidade de fonte/configuração, a interface mantém essa incerteza; não inventa uma causa nem atribui culpa às respostas.
A consulta IVA passa a ter moeda explícita (fiscal_currency), guardada no rascunho, sem presumirMZN ou copiar moeda do orçamento ou do cálculo IVA. A API recebe esse valor em context.currency. A operação genérica não se converte automaticamente no âmbito «operação interna à taxa geral sobre base líquida»: a limitação de integração é explicada com a resposta recebida e o critério esperado, e existe ligação para o formulário IVA com declaração explícita do âmbito. Uma importação/exportação/não residente/reembolso expressamente seleccionado é identificado como exclusão deste lote; não se altera a resposta para a fazer passar.
As notas aparecem junto dos campos e num resumo com ligações que focam o campo correspondente, mantendo o rascunho. O nome apresentado é «IVA — taxa geral»; «Ver fundamento» contém versão, vigência e fonte, sem expressãoDSL. As falhas de consulta/configuração são identificadas como sistema. O percurso de cálculo e as suas regras de admissão não foram ampliados. A consulta diagnóstica pode observar versões publicadas fora do período seleccionado, sob a mesma política de visibilidade, apenas para explicar a falta de cobertura; não as torna elegíveis.
**Prova dirigida:**5testes unitários novos/24asserções;1testeAPI/16asserções no clone isolado simulator_fiscal_checks_20261021_test;7testes existentes do resolvedor/25asserções; TypeScript, build(exit0), Pint e diff-check. A primeira execuçãoAPI detectou que esse clone ainda não tinha a coluna fiscal_acceptance; aplicou-se nele a correcção de esquema já aceite, com a guardaQA intacta, e repetiu-se apenas o testeAPI afectado. Não é diagnóstico da base de homologação. A comparação por índice do ensaio foi ajustada à ordem das chavesJSONB; não se alterou o critério fiscal.
No Edge, simulador normal QA em127.0.0.1:18580: consulta anual2026, operação genérica explicitamente escolhida para o ensaio; moeda inicialmente vazia, depoisUSD escolhido expressamente como caso dirigido. Confirmaram-se notas, resumo, foco em «Rever moeda»/«Rever operação», fundamento da versão sintética3, eUSD/ano/periodicidade/operação conservados após gravação e recuperação do mesmo rascunho. A captura de prova é um ensaioUSD, não evidência deUSD no caso original. Não se executou cálculo nem se exportou relatório. A fixture publicada apenas emQA para observar o diagnóstico foi depois suspensa; o consumidorQA permaneceu desligado. Nenhuma fixture foi importada, regra alterada ou consumidor activado na homologação nesta correcção.
Provas privadas na pasta outputs/simulator-continuation-20261020: iva-diagnostic-api-test.txt, iva-diagnostic-summary.txt, iva-diagnostic-summary.png e iva-diagnostic-build-final.txt. O reciboJSON existente tem o estado detalhado. A candidata permanece na branch codex/iva-diagnostics-QA, separada de main; não é uma nova publicação fiscal nem altera a entrega autorizada anteriormente.
IVA mensal ligado às vendas — candidata QA, 21/10/2026
Pedido da Tempo: o formulário recolhe pressupostos do negócio e calcula o IVA correspondente, sem repetir vendas nem tomar o imposto manual como entrada fiscal. A falta de ligação entre a projecção empresarial e o consumidor publicado era uma escolha de implementação; não uma nova obrigação do utilizador. Alteração na branch codex/iva-monthly-projection-QA, separada de main. Não altera a instalação, regra ou activação da homologação.
Ligação: o simulador normal reutiliza quantidades e preços por produto/mês do plano empresarial, com a mesma representação monetária das vendas já usada nesse plano. Se não existir plano, admite a receita mensal constante já guardada na projecção personalizada, identificando essa origem e exigindo declaração do enquadramento. Não usa os valores demonstrativos de um widget ainda não guardado. A indicação sem IVA/com IVA incluído fica explícita, sem a presumir. Neste lote só a base líquida declarada permite calcular: preços com IVA incluído, base desconhecida e meses sem vendas informadas permanecem indeterminados. Zero explícito calcula IVA zero; não se preenche um mês vazio com zero.
O cliente envia meses, vendas, moeda e declaração; não envia taxa, versão ou imposto manual. O servidor selecciona a versão publicada ligada ao consumidor e reutiliza o resolvedor temporal e avaliador decimal existentes em cada mês, dentro da mesma admissão transaccional. Nenhuma taxa foi fixada no formulário, nem introduzido arredondamento fiscal. A versão é congelada antes da fila; mantém-se a autorização/idempotência/histórico/relatório existentes. Sem migration ou reconstrução dos mecanismos. Cobertura permanece 2026, no máximo 12 meses consecutivos; um horizonte que atravessa o limite é explicado, sem truncar a projecção.
Ecrã e dependências: cada mês apresenta vendas declaradas, vendas tributáveis sem IVA, taxa efectivamente aplicada, IVA calculado e total com IVA. Após a primeira execução, a actualização automática fica ligada e pode ser pausada. Alterar vendas, moeda, período ou tratamento do IVA assinala imediatamente o resultado anterior como histórico desactualizado. A nova execução guarda outra versão sem modificar a anterior. Repetir sem alterações recupera a execução concluída; uma execução pendente é consultada pelo mesmo ID. Falhas conservam os pressupostos e permitem tentar novamente. O rascunho conserva configurações e resultado; o relatório distingue resultado actual e histórico desactualizado e não recalcula o IVA na exportação. Se algum mês estiver indeterminado, o total fiscal fica indeterminado, conservando os meses conhecidos.
Tesouraria adoptada: o IVA é um memorando fiscal separado; não se soma novamente aos recebimentos introduzidos, não se deduz como custo e não se apresenta como imposto final a pagar. Conserva-se o calendário de recebimentos/pagamentos declarado, sem inferir cobrança integral no mesmo mês nem liquidação fiscal. O imposto manual permanece exclusivamente no painel recolhido «Cenário personalizado de tesouraria — imposto manual, separado do IVA calculado», com rótulos de cenário personalizado. Não alimenta a base nem o resultado do consumidor IVA. Não foram acrescentados deduções, créditos, reembolsos, importações, isenções, taxas reduzidas ou regimes especiais ao cálculo fiscal; as hipóteses antigas de tesouraria continuam personalizadas e separadas.
Provas apenas do delta: 3 testes API novos/46 asserções, transacções no clone simulator_fiscal_checks_20261021_test com guarda QA; 4 testes frontend novos para reutilização das vendas, zero/informação em falta, invalidação e recuperação/relatório. Incluem taxa proibida no cliente, âmbito não declarado, preços brutos, período excluído, repetição sem duplicações, versão congelada antes da suspensão e conclusão depois dela. TypeScript/build/Pint/diff-check verificados. Reutilizadas as provas aceites do avaliador decimal, exportadores e PDF; não se voltou a testar paginação nem a ampliar cobertura legal.
Percurso Edge no simulador normal: dossier sintético privado «QA IVA mensal - vendas projectadas», ID e0201d19-286e-4d5c-9585-2c1e3bd1ad1e, QA127.0.0.1:18580. Vendas Janeiro1000.03/ Fevereiro2000.06/ Março0/ Abril vazio produziram IVA160.0048/320.0096/0/indeterminado. Alterar apenas a quantidade de Janeiro de1 para3 actualizou vendas3000.09, IVA480.0144 e total3480.1044. Assinalou-se resultado desactualizado durante a mudança. Seleccionar preços com IVA incluído conservou vendas e tornou base/IVA/total indeterminados; voltar manualmente à base líquida gerou nova execução. Após recarregar e recuperar o mesmo dossier, os valores permaneceram iguais e o fundamento mostrou a versão congelada. Quatro execuções mensais intencionais (inicial, venda alterada, base incluída, regresso à líquida), quatro relatórios com snapshots iguais às respectivas execuções; recuperação não criou a quinta. Não se atribui aplicabilidade fiscal universal a estes exemplos aritméticos.
A fixture sintética v4, ID 01a15e50-7972-72e0-8991-82ca28df9b49, está publicada e o consumidor ligado apenas no clone QA simulator_fiscal_delta_20261021_test, deixados disponíveis para esta revisão. Isto substitui o estado local suspenso/off da prova diagnóstica anterior; não é indisponibilidade na homologação. Não importar esta fixture, os seus actores ou os scripts privados. A regra real de homologação v1 mantém-se fora desta execução.
Revisão e disponibilização: rever esta candidata QA e integrar somente o código autorizado, mantendo a ligação ao ID/versão reais do destino. Este delta não precisa de publicar outra regra nem de mudar a taxa/âmbito ou de reactivar um consumidor já activo. Conferir apenas revisão servida e ligação mensal no destino após autorização própria; conservar o procedimento separado de publicação e activação se alguma dessas operações vier a ser expressamente pedida. Suspender novas admissões pelo interruptor existente ou estado da regra preserva as já admitidas e os históricos. Não apagar snapshots para suspender ou reverter código. Sem integração em main, escrita activa, validação jurídica atribuída à Tempo ou nova ronda de preparação identificada nesta entrega QA.
Provas privadas em outputs/simulator-continuation-20261020: monthly-iva-api-test.txt, monthly-iva-build-final.txt, monthly-iva-initial.txt, monthly-iva-updated.txt, monthly-iva-stale.txt, monthly-iva-included.txt, monthly-iva-recovered.txt, monthly-iva-live-history.json e monthly-iva-proof.png. O recibo existente conserva o saldo e os IDs; AUD-SIM-INT02 da matriz existente recebe esta referência, sem outra matriz/backlog.
Reconciliação Modelo A — primeiro incremento QA,21/10/2026
Por instrução expressa da Tempo, o Novo Modelo A.docx é a referência estrutural, incluindo o quadro incorporado como imagem; não foi substituído por um modelo genérico. A reconciliação campo a campo contém todos os quadros, campos01–27, finalidade, origem, cálculo, fundamento e estado; inventário/versões/exemplares e divergências preservados. A componente16% existente representa apenas01/02. O apuramento14–18 não se presume igual ao IVA das vendas; não é saldo final a pagar.
Original532008bytes/SHA25662c198e90d8c6792f7d5ccefc6386df2e4b6089573067d3a6e1eae7fc2b9572b e variantev1 de532100bytes/63d45fa80db17a60b43619d55a25813229d670d14c758273f86316285db8e02b preservados na biblioteca privada QA, recursos33/34, documentos e revisões/auditoria existentes. Importador existente, pré-visualização, conflitos/duplicados, scans reais limpos com mesmohash e nova tentativa sem criar documentos ou scans. Actor166 é a fixture administrativa do ensaio isolado, sem papel real ou alteração persistente de permissões atribuída à Tempo. Nenhuma publicação ou importação na homologação. Aceitação das fontes oficiais da Tempo08/10 mantida; edição vigente do formulário não afirmada pela data OOXML nem pela leitura do anexo.
No simulador normal, resumo de simulação parcial e correspondência consultável ligados ao resultado mensal recuperado. Compras/encomendas projectadas reutilizadas conforme agenda activa por produto, calendário ou valor constante; não são custo das vendas ou pagamentos de fornecedor. Zero difere de falta. A indicação semIVA/IVA/comIVA/dedutível fica separada e por determinar quando faltam classificação e documentos; não se considera toda compra dedutível. Relatório acrescenta correspondência/limites e referências dos pressupostos actuais de compras, sem os apresentar como resultado fiscal histórico nem reescrever snapshots. Nenhuma nova fórmula fiscal activada ou taxa fixada no formulário; sem migration ou motor novo.
Cotejo dirigido: Lei22/2022 art.17-A/aditamento e eficácia; Lei10/2025 arts.18/19/21/32/34 nas páginas12–15 do BR248, com leitura visual13/14. Registadas remissões divergentes do exemplar (regularizações11/12 versus caixas12/13; crédito18/19 versus caixas19/20; reembolsoart20 versus matéria noart21; quadro8 ambíguo). Não corrigir original nem aplicar instrução ambígua como regra. AT directa expirou; resultado indexado com numeração distinta é limitação de consulta, não substituto nem prova de edição vigente. Lei3/2025/dispositivos/regulamentos pertinentes por consolidar na extensão concreta, sem reabrir genericamente a base líquida16% aceite.
Provas novas apenas do incremento:3testes frontend (agendas, zero/falta, sem IVA/dedução fabricados e relatório sem mutar resultado), TypeScript/build, Edge de consulta após recuperação e biblioteca idempotente/scan. Avaliador, selecção publicada, precisão, históricos e exportadores aceites reutilizados. DossierQA e fixtureIVA v4 continuam disponíveis para revisão; este incremento não calcula novamente. Provas privadas outputs/modelo-a-20261021; recibo e inventário existentes actualizados. Branch codex/iva-modelo-a-reconciliation-QA, parent3f5430c3, separada de main; homologação/regra real/interruptor inalterados.
Saldo explícito: reconciliação e primeiro incremento de interface concluídos, apuramento completo não implementado. Próximo lote: classificação por operação e origem prevista/efectiva, cadastro fundamentado de âmbito/dedução e ligação a totais14–18 propagando indeterminação; 8–16h cadastro/consolidação e20–36h código/aceitação, total28–52h condicionado ao âmbito/consolidação, sem créditos anteriores/substituições/pagamento/reembolso ou simulador integral. O documento contém o delta e critérios concretos. Integração do código, publicação e activação continuam operações distintas; esta preparação não executa nenhuma no destino.
Continuidade e adaptação contextual — primeiro incremento QA, 22/10/2026
Instrução expressa da Tempo de 22/10: o contexto do investimento é transversal ao percurso, formulários, documentos e simulações, mesmo sem IA. Base Git e revisão servida confirmadas em leitura: 57fc914821d0cefa02caa80a74b3d42e663f2742. Trabalho isolado em codex/project-context-continuity-QA, sem integração ou publicação/activação fiscal no destino.
Causas identificadas no código e reprodução dirigida: InvestorContext só distribuía título, descrição, sector e geografia; o preenchimento comum copiava apenas campos vazios sem distinguir herança de edição deliberada; o IVA pontual mantinha moeda/data/base em estado local que desaparecia ao desmontar o ecrã. A projecção empresarial sobrepunha a moeda do projecto à moeda de origem do plano ao apresentar/calcular/exportar. No ensaio anterior, projecto guardado em MZN e selector IVA vazio. A primeira tentativa de abertura encontrou uma sessão expirada, confirmada pela leitura sem autenticação e resolvida pelo início de sessão normal; não foi classificada como perda do dossier.
Correcção comum: consolidar exclusivamente o rascunho explicitamente ligado ao mesmo dossier e proprietário; conservar origem, versão e hash. Não procurar o último projecto da conta. Herança persistida com assinaturas de alteração por campo e âmbito dossier/consumidor; não são tokens de autorização nem prova jurídica. Actualizar valores ainda herdados, preservar alterações deliberadas e campos apagados; manter a hierarquia geográfica e os restantes dados das parcelas. O armazenamento do navegador passa a incluir conta e projecto. Consumidores do padrão: simulador, apoio à terra, Balcão e manifestação de investimento; esta última recebe também a moeda compatível. Campos sem correspondência semântica não são copiados. Nacionalidade, residência e país de constituição não são equiparados.
O IVA pontual guarda as entradas com o rascunho. A exploração fiscal, oportunidade e componente pontual reutilizam a moeda compatível; a projecção mensal reutiliza o plano e o início previsto. Não se infere exigibilidade fiscal a partir da data prevista de início, nem residência jurídica a partir do país. USD é conservado e explicado como não suportado pela versão MZN. Uma divergência entre moeda guardada no plano e moeda do projecto é apresentada, sem conversão ou reclassificação. O plano conserva a moeda de origem também na apresentação e nos exportadores existentes. Vendas, zero/falta e snapshots de IVA continuam a usar o motor publicado e os históricos aceites; nenhum imposto mensal fixo é introduzido.
Adaptação deste incremento: o editor existente passa a permitir moeda, início previsto, origem do investidor, tipo/situação da entidade e residência fiscal declarada, sempre pela prévia/confirmar existente. A prévia continua a identificar dados/documentos conservados, resultados e etapas afectados; alterações apenas ao título/descrição não invalidam a aplicabilidade. O selector territorial reutiliza o catálogo público InvestmentZones para parques, ZEE e ZFI, preservando versão/hash, fontes e condições públicas já divulgadas no complemento existente. A mesma síntese aparece no contexto e simulador e segue para o relatório do dossier. Os ramos de terra/financiamento reutilizam a definição publicada, factos, estados e razões de InvestorPath; não foi criado outro avaliador nem activado benefício.
Escolher uma zona abre a análise específica: referência consultada, condições documentadas ou em falta, período/fonte cadastrados quando disponíveis e reconhecimento por determinar. O benefício e o cenário condicionado permanecem indeterminados quando não existe ligação executável às condições/reconhecimento. O IVA disponível é identificado como cenário geral sem benefício; não representa automaticamente o regime escolhido nem apuramento final. Reutilizam-se InvestorContext, InvestmentZones, InvestmentZoneOperationalDetails, InvestorPath/definição publicada, resolvedor/avaliador fiscal e snapshots existentes. A escolha técnica de exigir uma nova confirmação genérica dos mesmos dados em cada formulário foi retirada por instrução da Tempo; permissões, declarações, submissões formais, revisões independentes aprovadas e campos autorizados de pedidos devolvidos mantêm os controlos existentes.
Provas novas: 4 testes HTTP/74 asserções, em transacções revertidas na base isolada simulator_fiscal_delta_20261021_test/loopback55441; 8 testes frontend de herança, edição/apagamento, isolamento, parcelas, moeda divergente e contexto no relatório; TypeScript/build. Percurso Edge: A nacional/MZN e residência fiscal ZA, vendas guardadas de quatro meses → cálculo mensal → gravação → edição deliberada do título → recarregamento → terminar sessão/iniciar sessão → recuperação e relatório pelos dados efectivamente guardados. Resultado ae401465-834f-4761-9406-5af060c499fb, uma única execução nova no dia; Janeiro1000.03/IVA160.0048, Fevereiro2000.06/320.0096, Marçozero e Abrilsem informação. O modelo de relatório recuperado conserva os valores exactos e não altera o snapshot. B estrangeiro/USD, primeiro divergência explícita planoMZN/projectoUSD, depois declaração manual USD no plano, IVA recusado sem conversão; selecção de parque pela prévia e análise específica. Os testes de ZEE/ZFI usam apenas metadados sintéticos revertidos: não demonstram elegibilidade real. Provas privadas em outputs/context-continuity-20261022; não entregar fixtures ou credenciais.
Limites concretos: este é o primeiro incremento utilizável de continuidade e explicação contextual, não a conclusão da adaptação de todos os sectores/regimes. O catálogo QA consultado contém parques sintéticos; a ligação jurídica completa de requisitos/documentos/licenças e benefícios às condições de cada actividade/regime não está demonstrada. Condições sem estrutura/relação executável continuam explicitamente em falta; nenhuma alegação nova de direito ou benefício é feita. Não houve nova validação jurídica nem revalidação genérica de credibilidade das fontes oficiais aceites em08/10. Não repetir cálculo decimal/exportadores/paginação já aceites. A demonstração visual foi feita no percurso e simulador; os outros três consumidores receberam o reconciliador comum, sem se afirmar um ensaio visual integral de cada processo.
Revisão: abrir o simulador QA com o dossier A 92d0836c-0ffb-4e07-a7f5-0e8ca3f594b9 ou B 1872412f-251a-4f6d-bf18-70388e71a16a; usar a conta sintética QA existente, nunca actores sintéticos na homologação. O router privado de QA usa a instalação já existente do percurso, activada apenas neste ensaio isolado; não há migration ou nova exigência de funções. Entregar a candidata para revisão pelo processo Git existente, preservando alterações concorrentes. Uma integração futura exige rever o delta relativamente a main e o estado de instalação/configuração do percurso no destino; não publicar regras ou alterar interruptores fiscais como consequência desta correcção. Preservar todos os históricos na suspensão ou reversão de código.
Fecho da observação deste incremento: o regresso A ao dossier gravou a evidência financeira 43317c22-50c8-40cf-98e4-e5d4d108c372, rascunho cf4dec46-c96c-4aa6-aa9c-1a8d6ecb1bea v8, contexto v1, com hash preservado. A ligação de inspecção do Edge interrompeu-se depois da navegação; o inventário mostrou o endereço do mesmo dossier e a leitura autenticada do serviço confirmou a gravação. A parte visual final do regresso não foi observada e fica como limitação da ferramenta, não falha do simulador. B recuperou contexto v2 e gravou rascunho v6, mantendo USD e sem execução fiscal. O relatório gerado destes dados recuperados conserva a versão do parque e benefício indeterminado. O enriquecimento automático do rascunho privado é exclusivo do proprietário autenticado; o acesso de gestão ao dossier não concede por esta alteração acesso ao rascunho privado da conta.
Revisão de a76369eb e primeiro percurso adaptativo fundamentado — v1, 22/10/2026
Revisão encerrada no âmbito de a76369eb, sem integração. O último regresso tem prova equivalente: destino do mesmo dossier observado pelo inventário do navegador e evidência 43317c22-50c8-40cf-98e4-e5d4d108c372 confirmada no serviço, ligada ao rascunho v8/contexto v1 e ao hash a21fa5779bf8b8df366f16683c8a9bb9817a6d2921c7384f85df02135307fa13. A observação visual final continuou limitada pela ferramenta. Não se repetiram A/B, cálculos, exportações ou nova sessão; reutilizam-se as provas aceites. Leitura dirigida do delta: isolamento por proprietário/dossier, edições/apagamentos, origem monetária, controlo de escrita e ausência de publicação fiscal. Não foi identificada nova preparação técnica que condicione a decisão de integração deste âmbito. A adaptação jurídica seguinte é independente.
Percurso delimitado preparado: preparação de um pedido de investimento privado para empreendimento económico em Moçambique, com actividade concreta declarada, instalação identificada e operações mensais enquadráveis no consumidor IVA geral existente. Trata a preparação do pedido de investimento; não se apresenta como licenciamento sectorial completo, certificado emitido, direito a incentivo ou submissão à Administração. Investidor nacional/estrangeiro, actividade, modalidade e localização são condições distintas. A saída é formulário orientado, etapas/documentos aplicáveis e simulação identificada pelo seu âmbito. Não se escolhe “Turismo” ou uma ZEE para presumir requisitos ou benefícios.
Fonte primária aplicada: compilação oficial APIEX “Legislação de Investimentos em Moçambique”, exemplar obtido de https://pt.apiex.gov.mz/wp-content/uploads/2025/02/LEGISLACAO-DE-INVESTIMENTOS-EM-MOCAMBIQUE.pdf — 6467655 bytes, SHA256 ba1e9eaabfec5d0c4cb2d9f2444a6860f7a90f222034764197829be402d408ed. Contém Lei8/2023 (pp.8–32), Decreto8/2024/Regulamento (pp.36–59), CBF (pp.64–92). Aceitação oficial de08/10 mantida; não há exigência de segunda autenticação ou aprovação jurídica da Tempo. Inventários existentes de604 registos/exemplares/anexos e9901 caminhos do acervo reutilizados antes da selecção; cópia privada, texto extraído e citações em outputs/adaptive-path-20261022. Não importar/publicar automaticamente. As pendências históricas genéricas de nova certificação nos levantamentos de28/09 e03/10 não são gates deste lote.
Período: Decreto8/2024, artigo5 do diploma preambular, indica aplicação desde a publicação de7/03/2024; Lei8/2023, artigo32, indica90dias após publicação. O lote proposto cobre datas de projecto em2026 e preserva estes inícios, exemplar e versão. Não foi encontrada alteração nas consultas oficiais dirigidas desta execução; isso não certifica inexistência de actos posteriores. A compilação de2025 não constitui consolidação universal de2026. Na ligação executável, uma fonte/versão sem cobertura temporal não autoriza fallback para a versão mais recente. Os artigos citados são do Regulamento anexo quando identificado “R”; “L” designa a Lei8/2023. Rastrear esta distinção evita confundir os dois artigos9 ou o artigo5 preambular com o do Regulamento.
| Condição | Fonte e período | Efeito no formulário | Efeito no percurso | Efeito no cálculo | Informação em falta / estado da ligação |
|---|---|---|---|---|---|
| Projecto económico em Moçambique que procura garantias/incentivos; actividade efectiva conhecida | L2(1)–(3), pp.8–9; período2026 deste lote | Reutilizar localização e actividade; perguntar a finalidade jurídica apenas se ausente | S02 identifica cobertura do procedimento; actividades excluídas recebem encaminhamento próprio | Não inferir benefício ou exclusão de IVA a partir deste âmbito | Falta ligação executável da cobertura ao perfil; legislação sectorial especial fica fora deste lote |
| Capital/recursos do exterior ou nacionais; pessoa, residência e constituição separadas | L3/anexo, pp.28–29; R4–6, pp.38–40; período2026 | Reutilizar os dados declarados; pedir origem/forma do aporte quando faltar, sem transformar nacionalidade em classificação do capital | Acrescentar preparação da prova/registo do aporte externo quando aplicável | Nenhuma mudança automática de taxa IVA ou conversão; transferências cambiais não calculadas | Falta dado estruturado de aporte e ligação à documentação; requisitos cambiais concretos não abrangidos |
| Implementadora em constituição ou já registada | R9(1)(b), p.41; R14(1)(b), p.45; desde7/03/2024, recorte2026 | Mostrar a alternativa documental correspondente, sem exigir novo preenchimento da entidade | S05/S06: reserva de denominação ou certidão comercial, com estado declarado/associado por conferir | Não altera IVA | Falta associar categorias documentais existentes à alternativa e ao estado do cadastro |
| Implantação em instalações arrendadas ou com DUAT | R9(1)(c)–(d), pp.41–42; R14(1)(c)–(d), p.46; recorte2026 | Reutilizar local; perguntar apenas a modalidade/evidência ainda ausente | S06 identifica esboço/planta e alternativa contrato/DUAT; sem converter ausência de título em ausência de direito | Não atribui taxa, custo fundiário ou benefício | Falta modalidade estruturada e associação ao documento; sem decidir titularidade/disponibilidade |
| Pedido por representação comercial estrangeira, distinto de qualquer investidor estrangeiro | R9(2)–(3), p.42; recorte2026 | Pergunta de representação apenas quando a implantação declarada o permita; depois referência da licença e documento | S06 acrescenta licença de representação e identifica formalidades documentais pertinentes | Sem alteração da taxa geral | Falta modalidade e origem documental estruturadas; não exigir licença a todo investidor estrangeiro |
| Nenhuma condição de autorização; ou dimensão/actividade/terra que a exija | L22(1)(b)–(2), pp.20–21; R13(2), R14 e R21, pp.45–50; recorte2026 | Reutilizar montante/moeda/actividade/área; perguntar apenas PPP/concessão, implicações ou dados ainda desconhecidos | Seleccionar preparação de mero registo ou autorização; na segunda, S02/S06 acrescentam estudo de viabilidade e capacidade financeira | Comparação do montante exige MZN ou equivalência documentada; não converter nem inventar taxa; IVA permanece componente separada | Falta ligar os predicados e evidências ao perfil. “Não sei” não equivale a “não”. Limite de32mil milhões MZN só resolve a condição de montante, não todas as restantes |
| Localização geral versus ZEE/ZFI com referência e âmbito documentados | R13(1)(a)–(b), p.45; R10(4), p.43; recorte2026 | Reutilizar zona/versionamento; pedir reconhecimento/condições pertinentes em falta | Diferenciar entidade de encaminhamento e articulação aplicável; S08/S17 conservam evidências e pendências | Sem regra executável do benefício, mostrar resultado especial indeterminado e cenário geral separado | a76369eb já apresenta referência/limite; faltam ligações jurídicas de encaminhamento e condições. Parque industrial não equivale automaticamente a ZEE/ZFI |
| Operação mensal interna geral, base líquida, MZN e período coberto pela versão publicada | Regra IVA já fundamentada/autorizada; Lei22/2022 art.17(1), fontes/limites no recibo existente; recorte fiscal2026 | Reutilizar vendas/mês/moeda; perguntar apenas pressupostos fiscais ainda ausentes | Ligar cálculo e relatório à mesma versão de contexto/regra | Consumidor existente calcula por versão servida; zero difere de falta; preço com IVA incluído não vira base líquida | Ligação mensal já demonstrada. Dedução, reembolso, saldo final e benefício especial continuam fora |
| Mudança de título/contacto ou outra condição irrelevante para a regra aplicada | Decisão Tempo22/10 e contratos existentes; escolha técnica de dependências identificada | Preservar a edição e preencher o que continuar compatível | Não reiniciar revisões/etapas sem dependência relevante | Não criar outra execução nem mudar taxa/base | Prova de título e testes de dependências já aceites; estender por dependência, não por “qualquer alteração” |
Diferença útil que a implementação deste lote deve demonstrar, sem repetir A/B: um caso C exclusivamente sintético, empresa em constituição, actividade económica não extractiva declarada, instalações arrendadas, capital emMZN, período2026. Primeiro completar as condições de enquadramento; depois a preparação de mero registo mostra a alternativa reserva de denominação/arrendamento. Alterar a condição de autorização para verdadeira troca o resultado procedimental, os campos necessários e os documentos para estudo/capacidade financeira. Com condição desconhecida, a selecção fica indeterminada e pede apenas essa informação. Alterar para representação comercial estrangeira acrescenta a licença pertinente; mudar apenas nacionalidade não produz esse efeito. Alterar de localização geral para ZEE/ZFI documentada altera o encaminhamento e as verificações, sem conceder benefício. O IVA geral continua matematicamente igual quando a mudança não afecta a sua regra; mudar vendas/base/moeda/período altera ou impede o cálculo conforme a cobertura existente. Não forçar um resultado numérico diferente quando a lei não o determina.
Cadastro e código separados: o conteúdo jurídico acima está preparado, com artigos, exemplar e início temporal. Falta cadastrar as correspondências versionadas campo/condição/etapa/documento e ligar a sua execução ao perfil existente. Usar o mesmo dossier, prévia/confirmar, definições/questionários versionados e suporte condicional when já utilizado nos formulários; reutilizar resolvedor temporal, avaliação e aritmética exacta nas interfaces em que sejam compatíveis, com adaptador explícito para os predicados procedimentais, sem criar outro motor nem armazenar procedimentos como imposto. O contexto já tem sector/actividade/localização/moeda/período/entidade; as respostas de modalidade e evidências ainda não ligadas devem ser acrescentadas ao mesmo contexto cifrado, com origem e alterações deliberadas. Reutilizar vínculos documentais/históricos e permissões existentes. Não alterar a definição publicada dos19passos nem activar outra regra fiscal para executar este cadastro.
Estado desta entrega: revisão de a76369eb concluída no âmbito aceite; percurso seguinte fundamentado e delimitado, ainda não implementado/demonstrado de ponta a ponta. A tabela não é prova de funcionalidade nem declara licenciamento sectorial completo. Não integrar este documento como se instalasse o percurso. Próxima execução técnica concreta: ligar as condições acima, persistir decisões/documentos e verificar apenas as transições de C, recuperação e relatório; conservar as provas aceites de contexto e IVA. Código, publicação de parâmetros/regras e activação continuam operações separadas. Não há nova autorização organizacional ou validação jurídica da Tempo presumida.
Percurso de investimento privado executável em QA — 22/10/2026
Implementação do delta de 52fbb146, na branch codex/private-investment-path-executable-QA. A integração independente de a76369eb não foi repetida nem condicionada por este lote. Não houve escrita na homologação, integração em main, publicação ou activação de regras fiscais.
Orientação permanente aplicada: decisão expressa da Tempo de 22/10, registada também em AGENTS.md: legislação, modelos e procedimentos oficiais disponibilizados são a base aceite para implementar; decisões da Tempo orientam a implementação. Não existe nova aprovação jurídica genérica, aprovador adicional ou validação de credibilidade como condição para executar este percurso. Dados concretamente em falta são identificados por campo e não anulam os restantes requisitos. Associação documental não equivale a reconhecimento administrativo; esta distinção é informativa, sem bloquear a gravação ou a preparação.
Ligação executável: PrivateInvestmentPreparation é o adaptador delimitado das condições procedimentais já documentadas para o contexto cifrado do dossier. Correspondência private-investment-preparation-2026-v1, exemplar APIEX/hash anteriormente registados, recorte de início previsto em 2026. Reutiliza campos conhecidos do mesmo projecto/rascunho, permissões, vínculos documentais, prévia assinada, controlo de concorrência, chave idempotente, eventos antes/depois e os 19 passos existentes. Não é outro motor fiscal, catálogo paralelo de benefícios ou novo processo de aprovação. O resolvedor fiscal publicado e a aritmética decimal existentes continuam responsáveis pelos seus cálculos; não se armazenaram predicados procedimentais como impostos.
No dossier normal, «Preparar o pedido de investimento privado» abre o editor de contexto. Valores já declarados ficam recuperados e editáveis, sem nova confirmação por ecrã. Dados condicionais de área só aparecem para extensão de terra/concessão florestal. A prévia mostra ramo antes/depois, documentos novos/inactivos, passos afectados e resultados que precisam de revisão. Apenas a confirmação grava uma revisão; cancelamento conserva o estado anterior. Os requisitos correspondentes aparecem nas etapas S02/S05/S06 e o próximo passo acompanha mero registo/autorização. As dependências formais da definição publicada não foram substituídas por novos bloqueios.
Fundamento executado: Lei 8/2023 artigos 2 e 22; Regulamento aprovado pelo Decreto 8/2024 artigos 5, 9, 13, 14 e 21, conforme a tabela de 52fbb146 acima. Na interface, R designa este Regulamento. As exigências têm razão, artigo, período e ligação ao exemplar oficial. As alternativas certidão/reserva e DUAT/arrendamento não são cumulativas. Representação estrangeira determina a licença correspondente; nacionalidade ou residência, isoladamente, não a determinam. Aporte externo tem origem declarada separadamente da nacionalidade. Montante >32 mil milhões MZN, terra >=10 mil ha e concessão florestal >100 mil ha usam comparação decimal exacta, sem conversão cambial presumida. R21 distingue Finanças/Conselho de Ministros conforme as condições efectivamente conhecidas; uma condição positiva suficiente não espera pelas restantes para identificar o pedido de autorização.
| Comparação nova, exclusivamente QA | Campos e documentos | Próximo passo / efeito no cálculo | Prova |
|---|---|---|---|
| C: empresa em constituição, actividade geral, 1.000.000 MZN, 01/01/2026, modalidade doméstica, capital nacional, instalações arrendadas; condições de autorização negativas | Reserva de denominação, identificação, planta e arrendamento; não exige certidão, DUAT, licença de representação ou estudo/capacidade de autorização | Mero registo; encaminhamento Governador. Nenhuma taxa IVA alterada | UI → prévia → confirmar; contexto v1 |
| C: associar suporte sintético já existente ao arrendamento | Mesmo documento associado por ID; não cria cópia nem o aprova | Conserva o pedido; contexto v2 | UI; um vínculo em desk_documents |
| C: PPP/concessão empresarial passa a sim, modalidade passa a representação estrangeira e instalações a DUAT | Entram estudo/capacidade, licença de representação e DUAT; arrendamento deixa de ser exigido, conservando o documento anterior | Autorização, Conselho de Ministros; S02/S05/S06/S07 para revisão. Esta mudança meramente procedimental não invalida os inputs do IVA | Prévia visual antes de confirmar; contexto v3 recuperado; PNG C-authorization-preview |
| C: recuperação e simulador | MZN, data, título, contexto v3 e preparação por autorização recuperados sem reintrodução; arrendamento inactivo visível no histórico | Mesmo âmbito fiscal geral; nenhuma execução fiscal nova pedida neste ensaio | Dossier normal, simulador e rascunho ligado; leitura persistida e relatório Word |
| Regresso autorização → mero registo; entidade em constituição → existente | Estudo/capacidade/licença deixam de ser exigidos; arrendamento anterior volta associado; certidão substitui reserva, sem apagar histórico | Ramo e requisitos recalculados | Controlo HTTP transaccional dirigido, não repetição visual A/B |
| ZEE/ZFI versus parque industrial | Encaminhamento APIEX condicionado ao enquadramento reconhecido; parque não é convertido em ZEE/ZFI | Nenhum benefício ou taxa especial concedidos | Predicados com referências sintéticas de QA; não prova de elegibilidade de uma zona real |
Provas novas: três testes feature, 96 asserções, exclusivamente na base simulator_fiscal_delta_20261021_test, loopback 55441, com transacções revertidas e guarda do alvo. Cobrem limiares exactos, desconhecidos, exclusões/período, não inferência por nacionalidade, alternativas e preservação de vínculo, recuperação, idempotência, prévia sem escrita, adulteração, documento de outro dossier recusado e consumidor desligado, incluindo edição independente do título sem perder snapshot ou vínculos. Um teste frontend confere somente o novo conteúdo congelado do relatório. TypeScript e build passaram. Não foram repetidos cálculos decimais, exportadores completos, paginação PDF, CSV ou ensaios A/B aceites.
Recibo C da fase por autorização (histórico v3): dossier 4133311b-5426-4cec-900d-1f1484484083; contexto v3; rascunho beba1dec-fc05-4820-b099-24952c5ab36c, v4, SHA256 4136e82a3b9420ab8f980ec0d7bda6dc2a67b568c18535b5ba0ecc80efd37e37. Um documento sintético e5ce142a-1178-46a2-b039-f187139c62cd, sem pretensão de autenticidade oficial ou reconhecimento; mantém quarentena/scan pendente, sem contornar o carregamento/antimalware. A fixture apenas disponibiliza metadados privados para observar associação, não ensaia novamente uploads e não faz parte de dados/migrações de entrega. Três eventos de mudança do contexto; uma associação documental. C não contém projecção de vendas nem novo resultado fiscal; as provas anteriores dessa componente são reutilizadas.
Relatório efectivamente transferido: relatorio-investmoz-sintetico-qa-c-pedido-de-investimento-privado.docx, 16.674 bytes, SHA256 28cfe4b75116c892d3e29fde389de7d067b456761756bab732af625178ee69ce. Conferido o novo conteúdo: pedido de autorização, versão, fundamentos R14 e exigências não aplicáveis com histórico preservado. Não se repetiu a verificação de paginação/exportadores. Os anexos do dossier não são inseridos silenciosamente no pacote; mantém-se a selecção explícita existente. O relatório identifica a preparação/simulação e não alega submissão ou aceitação administrativa.
Limitação da ferramenta: a observação do evento de download excedeu o tempo e a extensão perdeu a ligação. O ficheiro terminou e foi encontrado em Transferências antes de qualquer repetição; conteúdo/hash conferidos localmente. Não se repetiu a exportação nem se classificou o incidente como falha do simulador. A prévia de impacto e recuperação já tinham prova visual; a recepção do ficheiro é prova distinta.
Limites concretos: este lote prepara o pedido de garantias/incentivos de investimento privado, não executa submissão administrativa, licenciamento completo por sector ou decisão de elegibilidade. Prospecção/pesquisa/produção extractiva, investimento público/exclusivamente social sem fins lucrativos e períodos fora de 2026 não são cobertos por este adaptador; processamento industrial tem o ramo de autorização documentado. A equivalência de montante noutra moeda não é determinada sem dados/fundamento cambial aplicáveis; condições positivas independentes continuam executáveis. O catálogo visual deste QA contém apenas parques sintéticos, não uma ZEE/ZFI real elegível: encaminhamento especial conferido no predicado, sem declarar prova visual de reconhecimento real. Benefícios territoriais, deduções, reembolsos e apuramento final do IVA continuam indisponíveis; o cálculo geral já autorizado conserva o seu âmbito.
Utilização e integração: abrir http://127.0.0.1:18580/investimentos/4133311b-5426-4cec-900d-1f1484484083 na conta QA habitual. Usar «Comparar e alterar contexto», editar apenas a condição relevante, comparar e confirmar; para documentos, usar o Balcão do mesmo dossier e associar os existentes. QA habilita investor-path.private_preparation=true no router privado. A configuração de entrega PRIVATE_INVESTMENT_PREPARATION_ENABLED fica desligada por defeito; a homologação não foi alterada. Integração eventual pelo processo Git existente: rever branch/código e limites, incorporar sobre main actualizado preservando alterações concorrentes, build e conferir apenas o delta no destino; habilitação deste percurso é uma configuração separada, não publicação/activação fiscal. Suspender a configuração oculta o novo consumidor e recusa novas escritas específicas, sem eliminar contexto, documentos, eventos, rascunhos ou relatórios congelados. Sem migração ou seed de fixtures no destino. Nenhuma nova ronda de preparação técnica foi identificada para este recorte; revisão/decisão de integração continuam separadas.
Distinção final conferida, sem nova validação genérica: Lei 8/2023 artigo 14(b) distingue investimento directo/indirecto; R13 refere expressamente investimento directo nos limiares monetários. Acrescentado o dado «Tipo deste investimento», separado da origem/nacionalidade. Sem esse dado, a via dependente da dimensão permanece indeterminada; para forma indirecta este lote não determina dimensão/encaminhamento monetário, mas continua a avaliar as condições independentes documentadas. PPP/concessão positiva continua a determinar autorização e Conselho de Ministros, sem esperar por esse campo irrelevante à decisão já suficiente. A interface foi conferida: retirar a condição PPP pede exactamente o tipo em falta; declarar directo resolve mero registo e retira estudo/capacidade financeira. Comparação antes de confirmar em C-final-directness-preview.png e percurso recuperado em C-final-path.png.
Estado final C: dossier v8, contexto v4, investimento directo declarado, PPP não, pedido de mero registo; quatro eventos de contexto e um documento/vínculo conservados. A modalidade estrangeira/DUAT conservou a edição deliberada. O rascunho v4 e o Word já transferido mantêm o contexto v3 por autorização, com hash acima: são prova histórica congelada e não o relatório da revisão v4. Não houve reescrita silenciosa nem reexportação. Ao abrir o simulador, o mecanismo comum de continuidade disponibiliza a revisão actual para o próximo rascunho/relatório; as provas anteriores deste mecanismo continuam reutilizadas.
Correspondência do novo relatório com o contexto v4 e dependências Git — 22/10/2026
Verificação dirigida solicitada pela Tempo após a avaliação do resumo de a1fbda06; nenhuma alteração funcional necessária. A prova anterior só demonstrava o Word congelado v3. Nesta continuação abriu-se o simulador pelo link normal do mesmo dossier C (incluindo o rascunho ligado), recuperou-se automaticamente o contexto v4 e gerou-se uma saída Word nova. Não se repetiram cálculos, CSV, paginação, anexos ou ensaios A/B aceites; não houve nova validação jurídica, integração ou alteração fiscal.
| Elemento | Word histórico v3 | Novo Word do contexto v4 |
|---|---|---|
| Identificação dentro do documento | «Revisão 3» e «Contexto congelado v3» | «Revisão 4» e «Contexto congelado v4» |
| Pedido | Autorização | Mero registo |
| Estudo de viabilidade | Documento por associar | Não aplicável; histórico preservado |
| Capacidade financeira | Documento por associar | Não aplicável; histórico preservado |
| Bytes / SHA256 | 16.674 / 28cfe4b75116c892d3e29fde389de7d067b456761756bab732af625178ee69ce |
16.678 / a2849427f4a91fa6ab78e433be8b919baca80a0f4f452a4546a5b169b921d753 |
| Cópia identificada para revisão | outputs/private-path-executable-20261022/C-report-HISTORICO-contexto-v3.docx |
outputs/private-path-executable-20261022/C-report-contexto-v4.docx |
O original v3 conserva exactamente os bytes/hash anteriores; a cópia está explicitamente designada HISTÓRICO. A revisão congelada no próprio Word identifica o contexto a que pertence, sem o transformar no estado actual. O novo ficheiro foi encontrado em Transferências após o clique de exportação e conferido por leitura das células efectivamente geradas; recibo em C-report-v3-v4-comparison.json. O rascunho passou a v5, SHA256 ba824fe0362ca87b301da55298122796f44fdfb11507830b3fe8f54cf88d132d, com contexto v4 e preparação por mero registo; dossier v8/contexto v4 e um documento mantidos. Prova visual de recuperação em C-new-report-context-v4.png. Não se altera a validade histórica da prova v3.
Dependências para integração após a avaliação da Tempo: ancestralidade confirmada 57fc9148 → a76369eb → 52fbb146 → a1fbda06. a76369eb fornece a continuidade comum do contexto/edições e é dependência funcional de a1fbda06; pode ser integrado independentemente. 52fbb146 é a preparação documental intermédia, sem código executável. A branch codex/private-investment-path-executable-QA inclui essa ancestralidade e a presente prova documental; não aplicar apenas o diff de a1fbda06 num destino sem a continuidade ou alteração equivalente. Se a76369eb já tiver sido integrado, o merge normal reconhece a ancestralidade e não o reaplica como um segundo desenvolvimento.
Procedimento: após a decisão, recuperar o main actual, rever a comparação e fazer integração Git que preserve as alterações concorrentes; resolver apenas conflitos efectivos, sem reset/force-push de main. A leitura desta continuação encontrou main em 57fc914821d0cefa02caa80a74b3d42e663f2742; é fotografia do estado, não autorização para ignorar commits posteriores. Conferir a revisão servida e só o delta no destino. A habilitação PRIVATE_INVESTMENT_PREPARATION_ENABLED é configuração distinta; não publica nem activa regras fiscais. Nesta execução a branch permanece separada, sem integração/habilitação na homologação. Limitações sectoriais/fiscais explícitas mantêm âmbito próprio e não bloqueiam este recorte concluído.
Integração autorizada do percurso adaptativo — 22/10/2026
A Tempo autorizou a implementação após o fecho do recorte. Main remoto foi actualizado por avanço directo de 57fc9148 para 064296e1, preservando a sequência a76369eb → 52fbb146 → a1fbda06 → 064296e1; não havia alteração concorrente ou conflito no momento do envio. A cadeia automática recusou a primeira tentativa no teste frontend «server draft snapshots split private identity from economic values»: 188/189 passaram. A versão servida anterior 57fc9148 foi conservada, conforme o mecanismo de recuperação; não se contornou a verificação.
Causa concreta: o adaptador de continuidade acrescentava compatible_fields_snapshot vazio na recuperação de um rascunho legado sem nenhuma origem compatível. Correcção delimitada na branch codex/adaptive-delivery-compatibility-QA: devolver o rascunho original quando não há origem compatível nem metadados de herança anteriores. A herança com origem/metadados continua executada, preservando edições e limites por dossier. Nove controlos dirigidos da herança e o teste exacto da partição/recuperação passaram; não se reabriram os cálculos, relatórios ou cenários aceites. A correcção deve seguir o mesmo processo automático; não altera regras fiscais, esquema ou dados activos. Recibos da tentativa e da disponibilização final em outputs/investmoz-adaptive-path-delivery-20261022.
Percurso adaptativo disponibilizado na homologação — 22/10/2026, 10:17 Maputo
Autorização expressa da Tempo executada. Main passou de 57fc9148 por avanço directo para 064296e1, conservando a ancestralidade a76369eb → 52fbb146 → a1fbda06 → 064296e1. O remoto não tinha alterações concorrentes adicionais no momento da integração; não houve conflito, reset ou envio forçado. A primeira verificação automática recusou o novo metadado vazio na recuperação legada e conservou a release anterior; a causa e a correcção dirigida constam da secção anterior. A correcção 042ffbde44cac27704d6f8b7ec25b525a42e3575 foi ensaiada em branch e integrada por avanço directo, sem suprimir o teste que detectou a incompatibilidade.
Revisão efectivamente servida: 042ffbde44cac27704d6f8b7ec25b525a42e3575, branch main, build de 22/10/2026 às 10:16:14 Maputo; instalação automática concluída às 10:16:16. Manifesto SHA256 655eef6e6a5e71c5138c68465a5b2ffc36d2cadeff96e6b35682dbfd19d42e79. Conferida em https://teste-investidor.tempo.co.mz/build/revision.json e no recibo protegido da cadeia. A cadeia correu as verificações próprias; manualmente só foram repetidos os dez controlos afectados pela incompatibilidade. Zero migrations e zero importações no destino, sem copiar fixtures QA.
Funcionalidade utilizável: https://teste-investidor.tempo.co.mz/investimentos (login normal); abrir ou criar o dossier legítimo do investimento e usar «Preparar o pedido de investimento privado» / «Comparar e alterar contexto». Estão disponíveis as perguntas condicionais, fundamentos, comparação antes de confirmação, requisitos/documentos e próximos passos do lote private-investment-preparation-2026-v1, com os limites de 2026 já documentados. A conferência do destino limitou-se à revisão, configuração efectiva e entradas: investimentos redirecciona ao login (302), simulador responde 200. Não se criaram dossiers/contas reais ou sintéticas no destino nem se repetiram os cenários funcionais QA aceites.
Habilitação concreta, distinta de fiscalidade: a configuração do percurso PRIVATE_INVESTMENT_PREPARATION_ENABLED estava ausente/false; passou a true mediante a sessão SSH habitual autenticada pelo utilizador. Antes da escrita foram conferidos revisão servida e hash da configuração; cópia protegida dos bytes anteriores verificada, alteração limitada a essa chave, proprietário e modo0640 preservados, cache de configuração reconstruída e workers notificados de reinício gracioso. Hash .env anterior 7cdaba591bb5787485a349c24db2fd7c8279436da0eb31502e44db2fffa21d03; posterior a6b4e9064cf6dbb2d945b53418a6c9252f9c736ff3fde4016b95b74885a9ee0f. A leitura posterior confirmou investor-path.enabled=true e private_preparation=true. A cópia de recuperação permanece privada em /var/lib/investmoz-deploy/backups/private-preparation-20261022/; não contém uma publicação de parâmetros e não segue para Git.
Estado fiscal preservado: nenhuma publicação/activação de nova regra e nenhuma operação na base activa. O consumidor IVA geral previamente autorizado manteve a mesma disponibilidade, cobertura2026 e mensagem antes/depois. As exclusões sectoriais, forma indirecta/dimensão monetária não determinada, benefícios territoriais e apuramento fiscal completo continuam explícitos e não bloqueiam o lote procedimental concluído.
Suspensão/recuperação: desligar somente a chave do novo percurso e reconstruir cache/reiniciar graciosamente os workers mantém dossiers, documentos, respostas, versões, relatórios e históricos. Para reverter configuração, usar o valor anterior apenas depois de conferir o hash actual e preservar alterações posteriores; não substituir todo o .env sem conferir concorrência. A reversão de código/build segue o procedimento de releases já existente, sem restaurar dados antigos. A release anterior foi efectivamente conservada na primeira tentativa recusada. Recibo completo local em outputs/investmoz-adaptive-path-delivery-20261022/delivery-receipt.json; a presente actualização documental fica na branch de registo, sem novo push main ou nova disponibilização desnecessária.
Revis?o das 30 fichas de Inhambane e cat?logo vazio ? 22/10/2026
Leitura remota autenticada, transac??o READ ONLY, base teste_investidor: 30 oportunidades em draft; zero publicadas em toda a base. As consultas independentes de Cabo Delgado e Inhambane e a consulta exacta Inhambane/Vilankulo devolveram zero sem falha de consulta. A alega??o de oportunidades publicadas de Cabo Delgado n?o se confirma neste destino; n?o inventar associa??es para preencher a lista.
As 30 localiza??es permanecem nos recursos privados opportunity_location_drafts, referidos no cadastro can?nico; os campos e v?nculos p?blicos ainda n?o s?o a projec??o dessas fichas. A inexist?ncia desses v?nculos p?blicos em rascunhos n?o prova perda da localiza??o. Na publica??o, projectar somente a abrang?ncia documentada e conferir a pesquisa territorial.
Decis?o Tempo nesta conversa: incompletude e autoriza??es necess?rias ? execu??o n?o s?o impedimentos autom?ticos ? divulga??o como oportunidade em prepara??o. Proposta: divulgar resumos das 30 fichas em prepara??o com fonte, edi??o, data-base e lacunas vis?veis; n?o declarar financiamento, terreno, licen?as, promotor autorizado ou execu??o confirmados. Valores hist?ricos, agregados e divergentes devem ser identificados sem somas indevidas. Nenhum impedimento concreto de divulga??o do resumo foi demonstrado nesta leitura. Isto n?o declara o conte?do privado integral public?vel: originais, contactos e evid?ncias continuam separados. N?o houve publica??o, altera??o de pap?is ou escrita remota.
Prepara??o por ficha: outputs/investmoz-territory-recovery-20261022/publication-review.json (30 identidades reais, localiza??o privada, lacunas e valores). Evid?ncia: read-catalogue-remote.py e remote-read.log no mesmo direct?rio. A tabela hist?rica de lacunas de prepara??o ? reutilizada, sem a converter em bloqueios legais. A prepara??o t?cnica do fluxo de publica??o ainda deve reconciliar essas condi??es com o contrato existente; n?o marcar publica??o como pronta ou executada.
O URL recebido ? do cat?logo/iniciar por territ?rio, n?o do dossier afectado. N?o permite ler o contexto inicial, a altera??o e a ?ltima ac??o desse processo. A falha da pr?via territorial e do t?rmino sem resposta continua aberta e ainda n?o foi reproduzida no dossier real; n?o encerrar pela disponibiliza??o anterior ou por esta leitura de cat?logo.
Continuidade territorial da pesquisa — correcção em QA, 22/10/2026
Esclarecimento da Tempo: o percurso reportado foi navegação pública entre carteira e catálogo, sem clicar em iniciar/continuar ideia. Não existe evidência de alteração de um dossier pessoal neste caso. Retira-se a exigência de URL do dossier e de confirmação de impacto; a alteração é de filtros de pesquisa.
Causa verificada: ligações da carteira para oportunidades e zonas e ligações dos menus públicos usavam destinos sem província/distrito. O contexto transportado para detalhes por catalogue_query também não acompanhava as ligações cruzadas. No ecrã de zonas, os parâmetros de exportação/detalhe omitiam a hierarquia territorial.
Correcção: searchTerritoryHref transporta exclusivamente os quatro níveis territoriais na URL entre carteira, oportunidades, zonas e educação, incluindo os respectivos detalhes. Reutiliza o catalogue_query existente e preserva os filtros próprios do destino. Uma selecção explícita de outro ascendente não herda descendentes incompatíveis. Sem armazenamento global, mistura de contas ou alteração de dossiers. Menus, navegação relacionada, breadcrumbs e ligações cruzadas usam a mesma função. O selector partilhado mantém a limpeza dos descendentes; não há confirmação adicional para pesquisar.
Verificação dirigida: seis testes Node (incluindo o selector partilhado), TypeScript e build isolado. No navegador QA: carteira Cabo Delgado → selecção Inhambane/Vilankulo → pesquisar → catálogo com ambos os campos preenchidos; recarregamento e regresso preservam a selecção; zonas herdam os dois níveis; mudar para Cabo Delgado limpa Vilankulo. Contagem zero, filtros activos e mensagem de ausência coerentes na base QA consultada. Não foram repetidos cálculos ou exportadores fiscais nem publicados registos para produzir resultados artificiais.
Provas: outputs/investmoz-territory-recovery-20261022/before-carteira.png e after-catalogue.png no workspace de entrega; testes em tests/frontend/search-territory.test.mjs e territory-path.test.mjs; logs QA outputs/territory-types.log e territory-build.log. O router privado QA selecciona o build isolado; não integra a candidata.
Entrega limitada a branch/QA. A homologação não foi alterada por esta correcção. Publicação das 30 fichas de Inhambane permanece separada: revisão por ficha preparada, nenhuma publicação executada; ainda por reconciliar a preparação técnica da divulgação em preparação com o fluxo existente. A correcção da pesquisa não depende dessa publicação.
Inhambane — divulgação dos 30 resumos executada, 22/10/2026
Decisão expressa da Tempo na conversa: «publicar» os 30 resumos como oportunidades em preparação; responsável confirmado nala@tempo.co.mz. A conta concluiu autenticação normal com MFA. A primeira ligação abriu indevidamente /management/opportunities, que exige administração geral; /minhas-oportunidades estava acessível e foi confirmado no navegador. A ligação SSH estava pronta; não foi necessário pedir outra autenticação.
Executada uma operação privada de dados, limitada às 30 identidades e aos hashes das versões autorizadas, sob a decisão de divulgação da Tempo e a sessão real de Nala. Não se atribuiu papel geral de Publicador, administração, revisões técnicas, aprovação jurídica ou autorização de execução. O fluxo genérico de aprovação de projectos completos permaneceu intacto. A publicação promocional tem finalidade própria registada em workflow_context.publication.purpose=promotional_preparation; não equivale à conclusão desse fluxo. Cada operação registou responsável, conteúdo anterior, hash do lote e finalidade no histórico restrito.
O executor preserva o cadastro canónico privado, proprietário e organização, originais e contactos. A projecção pública contém título, resumo, limitações, fonte/edição e indicação «Em preparação». Montantes não confirmados não são apresentados como investimento disponível; os dados técnicos/financeiros históricos são assinalados como tal. A conferência editorial retirou instruções internas dos resumos, usando as limitações da tabela aprovada na conversa.
Detectado e resolvido o vínculo territorial em falta: as localizações privadas mencionavam Vilankulos, mas só tinham província estruturada. O cadastro público confirma MUNICÍPIO DE VILANKULO → posto VILANKULO → distrito VILANKULO → Inhambane. Foram associados ao distrito apenas 15 registos cuja localização documental menciona expressamente Vilankulos, incluindo programas de abrangência múltipla. Não se inferiu implantação, coordenadas ou relação por proximidade. As restantes fichas conservam a abrangência documentada; não foram associadas indiscriminadamente ao distrito.
Verificação pública sem sessão da aplicação: 30 resultados em Inhambane, 15 em Vilankulo, todos com indicação «Em preparação», limitações e sem management_draft/workflow_context na resposta pública. No navegador foram conferidos catálogo, contagem e a ficha do Hotel Boutique no Terreno INATUR, incluindo a ausência de confirmação da disponibilidade do terreno/concessão. Foram reutilizadas as provas anteriores; o ensaio novo em base QA isolada conferiu publicação, alteração editorial, repetição sem duplicados, preservação do cadastro privado, recusa de alteração concorrente e associação exacta das 15 referências. Todos os dados sintéticos foram revertidos por rollback em QA; nenhum actor QA foi transportado.
Backup fresco em formato PostgreSQL custom antes de cada revisão de dados, protegido fora da raiz pública; catálogo de restauro verificado e provas anteriores de restauro reutilizadas. A leitura final confirmou as mesmas 30 identidades, cadastro privado/proprietários preservados, zero novos papéis Publicador e administração geral de Nala mantida desligada. A reversão deve partir do backup e do before_data restrito, comparar a versão actual e restaurar apenas as projecções/vínculos afectados, preservando edições posteriores; não restaurar toda a base sobre alterações concorrentes. Uma suspensão deve retirar os resumos do público, mantendo cadastro, relações e histórico, como operação expressamente registada; não apagar as fichas.
Recibos no workspace de entrega: outputs/investmoz-territory-recovery-20261022/public-verification.json, integrity-receipt.log, publication-final-result.log, published-vilankulo-results.png; executores privados e manifestos no mesmo directório, arquivados fora da raiz pública no destino. Hash final do lote: d0a1146a7113aabafc3c2d08c0bdc17d12fc8a51606ba9ff7e79b154556d6e08.
Revisão efectivamente servida: 042ffbde44cac27704d6f8b7ec25b525a42e3575. Nenhuma instalação Git, migration ou activação fiscal foi executada nesta publicação. A candidata 9ac623a4 de continuidade dos filtros permanece separada de main e pronta para revisão de integração. A divulgação das 30 fichas deixa de estar pendente; os estudos, financiamento e autorizações de execução continuam como limitações explícitas das oportunidades.
Integração territorial e contacto comercial — 22/10/2026
Tempo autorizou integrar 9ac623a4 e pediu conferir a revisão servida. 57fc9148 é antepassado de 042ffbde, e não uma revisão posterior: os hashes não têm ordem cronológica. A conferência remota comparou 685 ficheiros de aplicação/configuração com 042ffbde, sem diferenças; o manifesto de build também coincide com o identificador publicado. O histórico de instalação confirma a passagem de 57fc9148 para 042ffbde. Não se identificou reposição de código/build ou desaparecimento da entrega do simulador.
Integração Git por avanço directo até 1ec31856, incluindo 9ac623a4 e recibos documentais. A primeira tentativa automática preservou a revisão anterior por falha Node: importação sem extensão em catalogue-context.ts. Corrigida a referência explícita .ts; passaram os dez testes dirigidos do módulo afectado e da continuidade territorial. Não se repetiram os percursos aceites nem a publicação de oportunidades.
Decisão expressa da Tempo: o rodapé deve apresentar comercial@tempo.co.mz, porque o contacto comercial com a instituição é feito por esse endereço. Actualizado o valor por omissão de portal.institutional_contact_email. Na homologação existia uma sobreposição explícita PORTAL_INSTITUTIONAL_CONTACT_EMAIL=info@tempo.co.mz: alterada exclusivamente essa chave para comercial@tempo.co.mz, com backup privado íntegro, propriedade/permissões preservadas e reconstrução da cache de configuração. A apresentação e o mailto: utilizam a mesma configuração existente; não houve envio de email.
Recibos de destino e integração: outputs/investmoz-territory-recovery-20261022/revision-before-integration.log, footer-email-receipt.log e recibo final de instalação no mesmo directório do workspace de entrega. A confirmação final deve identificar a revisão efectivamente instalada pelo processo automático, mantendo os 30 resumos e as regras fiscais existentes.
Selectores especializados do catálogo — QA, 22/10/2026
Pedido da Tempo: explorar estruturas públicas independentemente da existência de oportunidades, sem inventar associações nem divulgar registos privados. A homologação em 7b1c3579 já devolve e apresenta Parque Industrial de Balama e Parque Industrial de Montepuez no selector de Cabo Delgado; “Todos” é o valor inicial, não uma prova de ausência das opções. A API devolve duas zonas nessa província e oito no âmbito nacional. A base QA local tem outro conjunto de dados: não continha parques públicos ligados a essa província. Esta diferença de dados não é uma regressão demonstrada do selector da homologação.
Falhas verificadas no código: actividades e cadeias eram reduzidas às oportunidades publicadas encontradas no território/sector; estruturas públicas podiam depender da existência adicional de uma ficha publicada da carteira; os selectores vazios só apresentavam “Todos”; a consulta da ficha de um parque sem oportunidades não era apresentada no resultado vazio da grelha.
Correcção na branch codex/catalogue-specialised-selectors-QA: opções provenientes dos cadastros públicos existentes, preservando os critérios de consulta e os vínculos territoriais. Estruturas com território principal documentado não dependem de uma oportunidade nem de uma ficha adicional da carteira. Mantêm-se os vínculos territoriais já resolvidos pelas fichas publicadas. Cadeias acompanham os clusters públicos do âmbito seleccionado. Actividades são o catálogo público de classificação, explicitamente separado da disponibilidade local de investimentos; não se inventa uma associação territorial ou sectorial. Os oito selectores apresentam contagem ou explicação de ausência. Uma selecção indisponível permanece identificada, com possibilidade de remoção, em vez de parecer “Todos”.
Quando a estrutura seleccionada não tem correspondências, o resultado informa “Sem oportunidades publicadas associadas com estes filtros” e mantém ligação à ficha pública existente, em qualquer vista. Um registo mestre sem ficha pública detalhada é identificado como tal; não se cria uma ficha ou publicação automaticamente. A pesquisa continua a combinar todos os filtros, sem alargamento automático ou atribuição de benefícios. A alteração territorial mantém a limpeza dos níveis e selecções incompatíveis já implementada.
Provas novas, sem repetir os percursos anteriormente aceites: Cabo Delgado com dois parques sintéticos identificados; selecção de Balama, zero oportunidades, abertura da ficha, regresso e recarregamento com selecção conservada; limpeza; Nampula com parque sintético Topuito; ausência de restrição territorial com ambos os conjuntos disponíveis e selecção anterior limpa. Fixtures limitadas à base simulator_fiscal_delta_20261021_test, porta 55441, excluídas do Git e da disponibilização. Testes CatalogueSelectorReferencesTest: três testes, 27 verificações, transacções revertidas, incluindo exclusão de privados/outro território, catálogo de actividades independente dos resultados, estruturas/cadeia sem oportunidades ou fichas adicionais. npm run types:check e build QA passaram. Provas locais: outputs/catalogue-selectors-20261022/audit.json, qa-balama.png, qa-nampula.png, qa-national.png e logs de build/tipos no mesmo directório.
Diagnóstico separado do mapa: API pública de Cabo Delgado devolve território cadastrado, zero limites e nenhuma geometria acessível. Leitura SSH em transacção READ ONLY confirmou zero linhas em geo_geometries para essa província; neste caso não é uma camada existente ocultada pelo perfil. Não foram criadas coordenadas, geometrias, vínculos ou permissões. Este diagnóstico não equivale à implementação dos limites administrativos.
Integração pendente da revisão prevista: comparar com origin/main, preservar alterações concorrentes e integrar pelo processo Git automático existente. Não há migrations, publicação de oportunidades, activação fiscal ou transporte das fixtures. Conferir apenas o delta e a revisão servida depois de autorizada a integração; não repetir as provas já aceites.
Revisão dirigida da interacção do selector — 22/10/2026
Na candidata 1d921c9d, ensaio pelo navegador Edge em QA, sem usar selectOption como prova desta interacção: clique no campo/seta deu foco; teclado Alt+Down, seta para cima e Enter mudou a selecção de Montepuez para Balama, actualizando o filtro e a ligação à ficha. Prova local outputs/catalogue-selectors-20261022/qa-keyboard-balama.png. Dados sintéticos explicitamente identificados como QA.
A ferramenta não observou o menu nativo aberto pelo rato; a tentativa de clicar na opção nativa devolveu opção não visível. Assim, a escolha completa apenas pelo rato permanece não demonstrada nesta revisão. Trata-se de limitação de observação/interacção da ferramenta, sem evidência suficiente para atribuir falha ao portal. A presença das opções na API/DOM e o uso anterior de selectOption não encerram esse ponto. Sem alteração funcional, repetição dos restantes testes ou integração em main; geometrias continuam como pendência distinta.
Decisão de integração — 22/10/2026
A Tempo encerrou a revisão de 1d921c9d com as provas existentes e autorizou integrar a candidata e o registo documental 916819eb. A interacção exclusivamente pelo rato permanece não observada pela ferramenta, sem carácter bloqueante; não constitui falha comprovada do portal, não exige substituir o selector nem repetir ensaios. A ausência de geometrias administrativas de Cabo Delgado permanece independente. Executar o processo Git automático existente, preservando alterações concorrentes; não transportar fixtures QA, publicar dados ou activar regras fiscais.
Entrada única de gestão — preparação em QA, 22/10/2026
Origem: prioridade expressa da Tempo para a equipa cadastrar oportunidades e carregar, editar e publicar documentos e legislação pela interface, sem depender do Codex. A decisão de 22/10 sobre fontes e execução mantém-se. Geometrias administrativas ficam no saldo separado.
Implementada /gestao-conteudos, acessível pelo painel, menu lateral, Balcão e editores. Reutiliza os cadastros, biblioteca, armazenamento, perfis e histórico existentes. Nova oportunidade abre o editor operacional para quem tem contexto de criação; acesso legado é identificado como tal, sem o apresentar como publicação operacional completa. A entrada não atribui papéis. Escolhas técnicas deste delta: navegação agregada, contagens no âmbito do utilizador, pesquisa documental e pré-selecção do ficheiro acabado de carregar. Não são novas regras organizacionais.
Percurso diário: Gestão de conteúdos e oportunidades → Nova oportunidade, escolher promotor/modalidade, preencher e guardar; recuperar em Gerir oportunidades e histórico. Para documentos: Novo documento ou Nova legislação → Receber documento em privado → Guardar em quarentena → Registar documento na biblioteca. O original recém-carregado fica seleccionado; título e emitente conhecidos são recuperados. Completar os metadados, guardar, pesquisar o registo e usar Editar metadados, Publicar ou Retirar da publicação. Associações apresentam nomes dos registos existentes. Campos ainda não conhecidos não são inventados. Publicação para consulta não activa cálculos.
Verificação nova: quatro testes, 99 asserções, com transacções revertidas exclusivamente em simulator_fiscal_delta_20261021_test, loopback 55441, guarda explícita. Demonstrados acesso de equipa sem administração geral, recusa a utilizador sem autorização e ciclo documental completo (upload, ClamAV real, recuperação por pesquisa, edição, publicação/download, retirada, preservação do hash e quatro revisões). Exemplo documental exclusivamente sintético, sem origem oficial ou valor jurídico. Corrigida a classificação de retirados: o histórico existente usa unpublished; o filtro e o rótulo reconhecem também withdrawn histórico. TypeScript e build QA passaram.
No navegador, login e MFA normais da conta sintética de equipa; entrada → legislação; entrada → nova oportunidade → guardar preparação incompleta → recarregar, com título recuperado e ficha QA 241. Não foi repetido o workflow integral de revisão/publicação de oportunidades já existente; a prova nova cobre a entrada e a gravação/recuperação. O ensaio documental completo foi HTTP transaccional, não uma prova visual de cada clique. A conta QA tem autorizações explicitamente sintéticas; não comprova as designações das contas reais. Não transportar fixtures, configurações QA ou concessões de acesso.
Provas locais: outputs/content-management-20261022/entrada-final.png, build-final.log, e tests/Feature/ContentManagementEntryTest.php. Estado: candidata em branch codex/content-management-entry-QA, ainda sem integração ou instalação na homologação. Não declarar encerrada a autonomia operacional de todas as contas/categorias apenas por esta entrada. Não houve migration, publicação remota, alteração de papéis activos ou activação fiscal.
Recuperação da demarcação territorial — QA, 22/10/2026
Retomada expressa da Tempo como recuperação de funcionalidade anteriormente demonstrada, nos requisitos existentes AUD-GEO-02/03 e na experiência de cadastro. Não é criação de outra cartografia. O incremento de divulgação promocional permanece na sua branch independente.
Causa comprovada: leitura SSH autenticada, em transacção READ ONLY, da release 8286d750/base teste_investidor: zero linhas em geo_geometries, incluindo eliminadas. Cadastro preservado: 11 províncias, 148 distritos, 437 postos e 1324 localidades. Directório dos originais privados ausente; importador desabilitado. Serviço de consulta, controlador e correspondências iguais por SHA256 ao código QA. Hash do cadastro (IDs, nomes, pais, nível, origem/códigos): 9de4181c42055bc6ef11b56333b64dd463d0ebe16bb2d1ea3238fc79e69024f7, igual no QA e destino. Não se confirmou recusa de acesso nem perda de associação: faltam os próprios dados.
Histórico: as provas de 09–10/10 em docs/investmoz/v2/auditoria-portal/correspondencias-cartograficas.md registam 361→393→408 correspondências em bases QA anteriores. Os originais e recibos privados permanecem disponíveis. Os transportes de 19–20/10 deste manual excluíram expressamente geometrias; a disponibilização Git também exclui dados e ficheiros privados (deploy/homologacao/README.md). Em 22/10 a leitura de Cabo Delgado já encontrara zero linhas; esta passagem conferiu a tabela inteira. Prova-se uma diferença de composição entre QA cartográfico e homologação. Não foi localizado recibo da instalação anterior destes limites na mesma base; não se atribui data a uma suposta eliminação nem se descarta a observação anterior no mesmo endereço.
Recuperação executada em QA: o clone actual também tinha zero geometrias. Reutilizados seis originais INE/UNOCHA de 07/06/2019 (três GeoJSON e três metadados), hashes preservados e correspondências v2 existentes. O serviço TerritoryGeometryImport inseriu 11 províncias, 133 distritos e 264 postos, internos, com recibos e auditoria. Todos válidos/SRID4326. Nos exemplos, a consulta pública continua sem devolver limites internos. ClamAV real, assinaturas de 22/10: três originais limpos. ADM3, 26773796 bytes, excedeu o stream de 25 MiB e passou pelo scanner de ficheiro GIS com orçamento de 40 MiB nesse processo; tentativa inconclusiva preservada. Sem alterar limites globais ou configuração do daemon.
O mapa enquadra o limite seleccionado; se não existir, enquadra o nível superior disponível mais próximo e informa que é contexto. A lista distingue selecção de contexto superior. Fonte, edição e actualidade jurídica indeterminada preservadas. Limite administrativo não representa parcela nem autorização de investimento.
Prova de interface: oportunidade sintética QA268 criada no portal. Cabo Delgado → ANCUABE → posto ANCUABE → ANCUABE-SEDE; limites e aproximação progressiva nos três primeiros níveis. Recurso de contexto/principal guardado; após recarregar e abrir “Ver / editar / restaurar”, os quatro níveis foram recuperados. A localidade sem limite próprio apresenta aviso dos níveis superiores. A fixture QA255 anterior tinha versão fechada/payload sintético mínimo incompatível com gravação do contrato; não foi usada como prova de persistência nem corrigida silenciosamente. Uma navegação durante a recompilação QA conservava referência a asset removido; recarregar resolveu o carregamento, sem alteração no destino.
Cobertura: 408/581 elementos do exemplar aceite: 11/11 províncias, 133/159 distritos, 264/411 postos. Mantêm-se 26+147 correspondências pendentes, com nomes nas prévias e no documento de correspondências existente. O denominador do cadastro é diferente (148 distritos, 437 postos). Este exemplar não contém geometrias próprias de localidades ou parcelas; não atribuir limites superiores às 1324 localidades.
Reposição preparada, não aplicada na homologação: outputs/investmoz-territory-recovery-20261022/demarcation/retained-geometry-restoration.zip, SHA256 53a5d8aa2be57603c928279cbd14561741dd2ec4b44b138fbc785380de6f951d, contém seis originais e manifesto. Não contém dump de substituição, actores QA ou limites sintéticos. Procedimento existente:
- Rever e integrar pelo Git o ajuste visual; conferir revisão efectivamente servida.
- Colocar originais no armazenamento privado partilhado, conservando hashes. Executar scanner actual ligado aos originais. Conferir backup/restauro e prova de activação da revisão/alvo, como exige o importador já existente; disponibilizar a configuração do importador.
- Gestor já autorizado, com MFA, abre
/management/territory-geometry-import: prévia e aplicação de províncias, depois distritos, depois postos, com motivo/confirmar. Reconciliar prévia fresca no destino; não executar hashes antigos do QA. Recibos e reversão dos lotes novos existentes preservados. - Conferir a cadeia territorial no formulário do destino e a recuperação após guardar, mantendo lacunas explícitas.
O staging dos originais, backup/restauro e configuração inicial ainda exigem operação técnica. Depois da reposição, seleccionar, guardar e recuperar a localização/mapa usam a interface. Esta passagem só leu o servidor remoto: sem alterar dados, permissões, camadas ou configuração. Não declarar a reposição no destino concluída.
Origem das restrições: decisões expressas da Tempo e requisitos anteriores do importador para preservação/backup e autenticação. Enquadramento e mensagens são escolhas de implementação, sem novo papel ou aprovador. Fonte oficial aceite reutilizada sem exigir nova validação da credibilidade.
Provas na pasta desta recuperação: inventário dos seis ficheiros, prévias/recibos por nível, verification.json, homologation-readonly.json e capturas. TypeScript, build QA e sintaxe PHP verificados; provas editoriais anteriores não repetidas.
Ajuste de acesso encontrado na disponibilização — 22/10/2026
A conta real de Superutilizador encontrou HTTP403 no importador: o middleware não incluía a cartografia no âmbito administrativo já aprovado e o serviço exigia exclusivamente o gate legado manage-portal. Corrigidos ambos para reutilizar ScopedPortalAdministration, com MFA de sessão e as exclusões existentes de Auditor. Não foram alteradas atribuições, papéis, contas ou o gate global. Origem do bloqueio: escolha antiga de implementação, não decisão organizacional da Tempo. Três testes transaccionais novos/15 asserções em QA: Superutilizador com MFA chega à validação de fonte/aplicação; sem MFA e conta comum são recusados; nenhum grant legado criado. Provas QA cartográficas aceites reutilizadas sem repetição.
Demarcação territorial reposta na homologação — 22/10/2026
Pedido expresso da Tempo executado. Candidata 15d82611 revista e integrada em 73c046e1; ajuste de acesso 95d4cf44, testado em QA, integrado em 30aed7cd. A revisão 30aed7cd12ef65f797191467232087643c396751 foi instalada pelo processo Git existente e confirmada em /build/revision.json?demarcation=30aed7cd. O transporte de dados foi executado separadamente do Git.
Dados, backup e importação
Seis originais INE/UNOCHA de 07/06/2019 transportados para o armazenamento privado partilhado: hashes iguais ao manifesto aceite, ficheiros 0640 e directório 0750, fora da árvore pública. Análise real dos seis pelo ClamAV 1.4.3, assinaturas de 22/10/2026, resultado limpo. Utilizado o protocolo local FILDES do daemon existente, sem instalar scanner, alargar permissões dos originais ou alterar limites globais: documentação oficial ClamAV.
Backup completo de teste_investidor, snapshot exportado consistente, restaurado em 127.0.0.1:55441/demarcation_hml_restore_20261022_complete_test. As 171 tabelas coincidem integralmente por contagem e checksum canónico; arquivo dos 333 ficheiros verificado por conteúdo/hash. Recibo remoto em /var/backups/investmoz-demarcation-20261022-complete/backup-receipt.json, dump SHA256 f80551de827e954a35b66ee4c8f2fcc559a4c88b48b3dc799c33b74907079c9b. A comparação inicial revelou diferenças de ordenação Linux/Windows e a visão RLS reduzida da conta da aplicação; a comparação final usou ordenação canónica e a mesma visão completa do backup, preservando também os registos fiscais. Não se desactivou RLS.
A conta real nala@tempo.co.mz (ID15), com login e MFA normais renovados pelo titular, abriu as prévias frescas e aplicou os três níveis pela interface /management/territory-geometry-import:
| Nível | Criados | Pendentes | Lote auditado |
|---|---|---|---|
| Províncias | 11 | 0 | ec2c7c27-e4a3-466e-91a4-60aba939d3a0 |
| Distritos | 133 | 26 | 142667c7-7309-4461-8d0a-fd00cb421577 |
| Postos administrativos | 264 | 147 | b6d5a7e2-2f44-4bd6-9634-d97ee58ab718 |
Total: 408 limites internos, válidos, não vazios, SRID4326; três recibos e três eventos geometry_import_applied ligados ao actor real. As geometrias foram repostas para consulta autorizada no cadastro; não foram publicadas camadas internas. Reversão existente disponível por lote, preservando originais, histórico e reutilizações e recusando alterações posteriores. Não se executou reversão no destino.
Delta e acessos conferidos
Na oportunidade real #30, «Centro de Emergência Turística e Medicina de Mergulho de Tofo», a sessão real abriu Recursos → Ver recurso. O mapa desenha o limite da província de Inhambane, com fonte/edição e identificação de território seleccionado. Não é um polígono próprio de Tofo: distrito/posto/localidade continuam por indicar nessa ficha, como antes. A oportunidade, o recurso e a publicação não foram gravados nem alterados. Captura: hml-demarcacao-tofo.png. A prova QA aceite de guardar/reabrir quatro níveis foi reutilizada, sem repetição.
Consultas de controlo no destino recuperaram 1/2/3 limites na cadeia Cabo Delgado → distrito Ancuabe → posto Ancuabe. A localidade Ancuabe-Sede continua sem limite próprio e com três limites ancestrais de contexto. O cadastro territorial conserva exactamente o hash anterior 9de4181c42055bc6ef11b56333b64dd463d0ebe16bb2d1ea3238fc79e69024f7.
Conferidos os acessos das contas existentes: IDs15 e16 mantêm a designação aprovada de Superutilizador; ID15 mantém Promotor e Validador. Não foram criadas contas ou atribuições. O endpoint do cadastro aceita os perfis já autorizados; a demonstração visual autenticada foi com ID15. A conferência das atribuições de ID16 foi de política, sem simular outro login. Quinze contas sem o perfil correspondente não satisfazem essa autorização. Pedido HTTP sem sessão ao endpoint privado devolveu 401; API pública devolveu zero limites internos; tentativa de obter o original pelo caminho público devolveu 403. Originais privados e regras de acesso preservados. Contas ainda não criadas não bloquearam a reposição.
O importador tinha um bloqueio legado de implementação: exigia manage-portal e não reconhecia a administração já aprovada. Corrigido por reutilização de ScopedPortalAdministration, com MFA de sessão e exclusões de Auditor existentes. Três testes novos/15 asserções passaram; não foi criado novo papel, aprovador ou gate global. Não houve repetição das provas QA cartográficas aceites.
Após a importação, 166/171 tabelas integralmente iguais ao backup. Apenas geo_geometries (0→408), geo_write_receipts (0→3), audit_events (+6), cache e sessions diferem. Oportunidades, documentos, cadastro territorial, atribuições e par de Superutilizadores preservados integralmente.
Guia curto e estado final
Entrar em Gestão de conteúdos e oportunidades → Gerir oportunidades e histórico → abrir a ficha → Imagens, documentos e localizações → abrir ou preparar a localização. Seleccionar a hierarquia documentada; o mapa enquadra o limite disponível. Se faltar geometria própria, a mensagem distingue o contexto superior. Guardar o recurso e reabrir pela mesma lista recupera a preparação; não é necessário comando ou Codex para a consulta ou cadastro corrente.
Reposição concluída neste recorte. Mantidas as 26 correspondências de distritos e 147 de postos pendentes, com nomes nos documentos/prévias existentes. O exemplar não contém polígonos próprios das localidades ou parcelas. Essas lacunas não bloqueiam os 408 limites recuperados. A data de eventual desaparecimento anterior no mesmo endereço continua não determinada. A divulgação promocional mantém o seu incremento separado; este fecho não a declara integrada.
Provas: homologation-restored-readonly.json, staging-receipt.json, preservation-receipt.json, http-access-verification.json, captura e recibos locais na pasta desta recuperação; backup/restauro e prova de activação em caminhos privados. Uma interrupção do transporte local foi resolvida por escrita atómica da mensagem, antes de qualquer importação. Não ficaram passos técnicos pendentes para esta reposição; futuras importações usam as salvaguardas de backup/MFA já existentes.
Concursos e anúncios — implementação em QA, 22/10/2026
Origem: pedido expresso da Tempo no anexo «O InvesteMoz deve ter uma secção pública Concursos e anúncios», com continuação autónoma autorizada. Aplicam-se as decisões permanentes da Tempo de 12/10 e 22/10/2026. Este incremento trata a divulgação de procedimentos; não abre recepção electrónica de propostas nem altera os investimentos associados. A estimativa apresentada antes da implementação foi de 16–24 horas; não representa tempo efectivamente consumido.
Reutilizados: entrada /gestao-conteudos, autenticação/MFA, autorização editorial e documental, entidades, oportunidades, projectos, sectores, território, biblioteca, originais privados, análise ClamAV, download verificado e audit_events. Acrescentados apenas três cadastros: procedimentos com rascunho, versões/actos imutáveis e acompanhamento individual. Uma oportunidade/projecto pode ter vários procedimentos; cada um admite lotes e actos associados. Não foram criados papéis, designações de funcionários ou aprovadores. Contas ainda não criadas não bloqueiam as contas já autorizadas.
Fontes, âmbito e escolhas de implementação
- A UFSA identifica o Decreto n.º 79/2022 na página oficial do regulamento. O quadro oficial do Banco Mundial disponibiliza regulamentos e documentos normalizados, incluindo a edição de Setembro/2025. Cada procedimento regista a sua edição e acordo aplicáveis; a edição mais recente não é imposta a acordos anteriores.
- Inventário deste recorte: instrução anexada, páginas oficiais referidas, pesquisa dos ficheiros acessíveis do repositório e referências da biblioteca existentes. Não foi identificado neste recorte um modelo oficial de concurso já fornecido como original local utilizável. Não se declarou importado ou analisado o articulado integral/modelos que não foram obtidos. Os documentos de demonstração são explicitamente sintéticos, sem classificação de autenticidade oficial. Os modelos disponibilizados pela Tempo usam a biblioteca existente, sem segunda validação genérica da credibilidade de fontes oficiais aceites.
- Decisão expressa da Tempo: separar regimes Estado/externo/privado/outro; não generalizar UGEA, Cadastro Único, garantia ou abertura pública; guardar preparação incompleta; distinguir publicação de origem e publicação do portal; preservar actos, privacidade e auditoria.
- Escolhas técnicas: só a prévia de publicação exige identificação, entidade, objecto, modalidade, instrumento/edição/fonte, calendário coerente, canal e motivo público. Rascunhos permanecem incompletos. Prazos mínimos são opcionais, citados por fonte/edição/modalidade; dias úteis usam exclusivamente o calendário documentado no registo. Não foi parametrizada uma tabela universal de mínimos legais nem presumido um calendário de feriados.
- Escolhas técnicas de preservação: concorrência por versão, prévia assinada pelo servidor, nova verificação dos anexos na publicação, documentos por ID/hash e histórico imutável. Retirar ou substituir um binário na biblioteca torna indisponível o anexo antigo, sem apontar silenciosamente para outros bytes. Contacto sem autorização, notas internas e anexos privados não integram o conteúdo público. Ligações a oportunidades/projectos privados não divulgam os seus títulos ou fichas.
- Autorizações reutilizadas: edição/publicação por contas já elegíveis para gestão documental completa ou edição editorial; auditor e conta simples não obtêm escrita. Acompanhamento exige apenas autenticação, incluindo conta sem email verificado. Estas escolhas não atribuem novos papéis e não dispensam os requisitos existentes de cada autorização.
Guia curto da equipa
Entrada QA: Gestão de conteúdos e oportunidades. Abrir Novo concurso/anúncio; escolher a entidade já cadastrada e, quando aplicável, oportunidade/projecto, sector e território. Indicar o regime e a edição do instrumento aplicável. Guardar mesmo com preparação incompleta; recuperar em Gerir concursos e anúncios. O motivo interno fica no histórico de gestão.
- Preencher objecto, lotes, participação, financiamento, calendário, fuso horário e canal efectivo de apresentação. A data de origem é a referência do procedimento; o portal regista separadamente a sua publicação.
- Usar Carregar / gerir documentos e scan na biblioteca, que abre outra página sem perder o editor. Carregar o original, acompanhar o scan, editar os metadados e disponibilizar explicitamente os documentos autorizados. Voltar ao concurso, usar Actualizar op??es da biblioteca e seleccionar os anexos. Marcar públicos só os destinados à divulgação; os restantes permanecem privados.
- Guardar, escolher Anúncio inicial e Preparar prévia pública. Rever contacto, documentos, objecto, entidade, prazo e canal. O motivo público aparece também no histórico público. Usar Publicar este acto; alterações posteriores no rascunho não modificam essa publicação.
- Para esclarecer ou rectificar, guardar a revisão e publicar o acto correspondente. Para prorrogar, indicar o novo prazo, guardar e escolher Prorrogação; a prévia mostra o anterior e o novo. Resultados/adjudicação ou cancelamento usam o mesmo percurso, com texto e motivo documentados. O fim do prazo muda a indicação para Prazo de propostas terminado, sem adjudicação automática. Actos informativos posteriores não reabrem um cancelamento/resultado.
- Consultar o catálogo público QA; pesquisar por palavras, entidade, sector, localização, modalidade, financiador, regime, estado ou prazo. Abrir a ficha e Voltar aos resultados conserva os filtros. Relatório imprimível → Imprimir anúncio permite imprimir/guardar pelo navegador, incluindo o histórico dos actos.
- Uma conta simples usa Acompanhar concurso e Os concursos que acompanho; a lista identifica novos actos desde o registo de acompanhamento. Deixar de acompanhar remove só a subscrição individual. Não há promessa de alerta por email nem entrega de proposta: apresentar a proposta no canal indicado no anúncio/documentos.
Publicação documental disponibiliza um original da biblioteca; publicação de oportunidade disponibiliza a ficha pelas etapas existentes; divulgação promocional divulga o resumo autorizado de preparação; publicação de concurso divulga um procedimento e os seus actos. Nenhuma dessas operações autoriza execução do investimento, activa cálculo fiscal ou comprova envio à UFSA/financiador.
Evidência e limites de entrega
Base exclusivamente QA simulator_fiscal_delta_20261021_test, porta 55441, com guarda de identidade antes de migração/fixtures/testes. Testes transaccionais preservam a base existente. ProcurementTest cobre preparação incompleta, concorrência, três regimes, filtros e retorno, prévia desactualizada, publicação anónima, prorrogação, expiração sem adjudicação, resultados, cancelamento persistente, conta simples, recusas de escrita, scan real, anexo privado, download anónimo e retirada documental. Ver resultado final em outputs/procurement-20261022/tests.log. Navegação existente: seis testes aprovados; compilação QA e TypeScript aprovados.
Exemplos persistentes, todos SINTÉTICO QA, sem concursos reais: estatal 17f44d8d-d077-4dca-9a63-5eb1c85a6926 (inicial + prorrogação, prazo de 20/11 15h para 16/12 17h, Africa/Maputo); externo e85861cd-ffbb-4348-9cce-d588a6e09b86 (aberto); privado fe271b02-0bfd-4fe2-8db2-856567b5111f (inicial + cancelamento). Os rascunhos foram preparados por fixture identificada; guardar/reabrir, prévias e publicações destes actos foram executados no navegador pela conta sintética existente, não por comando de publicação. Resultado/adjudicação e expiração foram demonstrados pelos testes HTTP, não por adjudicação de um registo real.
Consulta anónima confirmada depois de terminar sessão: três regimes/estados no catálogo, ficha prorrogada, filtros preservados, relatório e download real do anexo 38. Anexo 39 e contacto sem autorização ficam privados. Acompanhamento confirmado pela conta simples já existente, sem MFA ou papel editorial. Evidências locais: management.png, catalogue.png, print-notice.png, watch.png, fixtures.json e resultados em outputs/procurement-20261022/. Estes artefactos QA não contêm credenciais na entrega Git.
Operações correntes deste incremento são feitas pela interface: cadastrar, guardar, recuperar, carregar/editar documentos pela biblioteca, pré-visualizar, publicar, actualizar/prorrogar, publicar resultado/cancelamento, consultar/imprimir e acompanhar. Não requerem executor privado ou Codex por concurso. Pendente técnico de disponibilização fora de QA: revisão e integração Git, migração pelo mecanismo de entrega e activação de PROCUREMENT_ENABLED no destino autorizado. O código usa flag desligada por defeito. Nenhum anúncio real foi publicado, nenhuma base activa foi migrada e não há integração automática com UFSA/financiadores. Geometrias não foram alteradas.
Proposta de instalação compatível com deploy automático — candidata 1bcf34c0
Estado: proposta para revisão da Tempo, sem execução no destino. O guia e os links QA da secção anterior foram conferidos pelo executor; a Tempo informou que ainda não os conferiu. A evidência QA aceite não equivale a aceitação pela Tempo nem a disponibilização na homologação. Destino previsto: https://teste-investidor.tempo.co.mz; confirmar a configuração instalada antes de executar. Esta passagem não integra em main, não altera configuração remota e não publica anúncios.
Dependência de entrega encontrada. Em deploy/homologacao/pipeline.py, source_contract() calcula SHA-256 dos ficheiros de migrations com normalização CRLF→LF; build() compara o conjunto completo com schema_contract e recusa qualquer diferença antes do build. O pipeline não executa migrations de produção nem importa conteúdos. A promoção troca atomicamente a release, verifica a revisão servida e a página inicial e reinicia a fila; estas verificações gerais não provam o acesso ao módulo. A configuração de exemplo aponta para /etc/investmoz-deploy/schema-contract.json e /etc/investmoz-deploy/delivery.json. Os ficheiros instalados podem divergir do repositório e devem ser lidos e comparados. Não se deve remover o gate nem converter o deploy em migração global automática.
Delta exacto de schema. Uma única migration: database/migrations/2026_10_22_230000_create_portal_tenders.php. Não altera tabelas existentes, extensões, utilizadores, papéis, grants, documentos ou dados territoriais; não contém seeds nem publicação de conteúdo.
| Tabela nova | Colunas | Chaves e relações efectivamente declaradas |
|---|---|---|
portal_tenders |
id UUID; draft JSONB obrigatório; version integer com default 1; published_version_id UUID anulável; created_by bigint obrigatório; created_at, updated_at timestamptz anuláveis |
PK id; FK created_by → users.id, RESTRICT na eliminação |
portal_tender_versions |
id UUID; tender_id UUID; version integer; act varchar(24); payload JSONB; reason text; actor_id bigint; published_at timestamptz anulável; created_at timestamptz obrigatório com default actual |
PK id; UNIQUE (tender_id,version); FK tender_id → portal_tenders.id e actor_id → users.id, ambas RESTRICT na eliminação |
portal_tender_watches |
tender_id UUID; user_id bigint; seen_version_id UUID anulável; created_at, updated_at timestamptz anuláveis |
PK (tender_id,user_id); FK para portal_tenders.id e users.id, ambas RESTRICT na eliminação |
published_version_id e seen_version_id não têm FK nesta candidata; a associação de publicação é verificada pela aplicação, incluindo pertença da versão ao concurso. O histórico é imutável pelas operações da aplicação; esta migration não acrescenta trigger de imutabilidade. Índices novos: os das três PK e do UNIQUE indicado. O executor Laravel regista também a migration na tabela migrations existente. Confirmar tipos e restrições no catálogo PostgreSQL após instalação, não apenas a existência de uma tabela.
Dependências já existentes: PostgreSQL/JSONB, users, entidades organizations, opportunities, projects, sectors, geo_locations, biblioteca portal_resources/documents e relações documentais, audit_events, autenticação/verificação/MFA e autorização documental/editorial conforme a conta. A FK de instalação depende directamente de users; as restantes tabelas são dependências de execução do cadastro, prévia, consulta ou publicação. Manter os originais no armazenamento persistente privado e o scanner/fila da biblioteca operacionais; a publicação de anexos exige o scan e os direitos já aprovados. Sem nova dependência Composer/NPM ou serviço externo. composer.lock e package-lock.json não mudam. As provas locais de ProcurementTest usam a base QA nominal e ClamAV real; não adicionar esse teste ao CI remoto sem adaptar a sua guarda de ambiente e disponibilidade do scanner. O pipeline conserva a sua suite isolada existente; não se repete a bateria QA aceite.
Sequência proposta, com pontos de paragem verificáveis:
- Revisão e identificação. Rever
1bcf34c0e este plano. Confirmar SHA integral da fonte, revisão/release actualmente servida, configuração real do pipeline, contrato actual, ligação à base e estado da migration. Conferir as contas reais já existentes contraDocumentManagementAccess/Procurement::access: gestão completa ou designação editorial existente, email verificado e requisitos MFA aplicáveis; auditor e conta simples sem escrita. Não inferir acesso por nome do papel nem criar designações. Se uma conta ainda não existe, registar só essa pendência e continuar com as já autorizadas. - Coordenar a janela antes do merge. Pausar o observador
teste-investidor-deploy.pathe impedir novo processamento durante a operação; aguardar o serviço em curso e coordenar comdelivery.lock. Preservar os pedidos em fila e reconciliar qualquer integração concorrente antes de retomar. Não parar à força um build nem manipular a release servida. ConfirmarPROCUREMENT_ENABLED=falsena configuração efectiva; não colocar esta variável no ficheiro de flags CI, cujo validador só aceita prefixosPORTAL_/INVESTMOZ_. - Backup recuperável. Guardar dump consistente da base de destino, cópia/snapshot do armazenamento persistente privado e público e manifesto de hashes, revisão/release anterior, contrato, configuração e recibos. Configuração e segredos ficam em local privado. Ensaiar o restauro desse backup numa instância isolada, sem substituir a base activa nem publicar ficheiros; conferir integridade, tabelas e amostra de binários. A prova de restauro antiga não substitui o backup desta janela. Registar hora/identidade da base e preservar os recibos.
- Instalar schema sem activar. Preparar a fonte exacta revista fora da árvore servida, sem fixtures QA, com dependências do lock e ligação autenticada ao destino conferida. Pela sessão técnica autenticada e com os privilégios de instalação existentes, executar apenas
php artisan migrate --path=database/migrations/2026_10_22_230000_create_portal_tenders.php --forcenessa fonte/configuração. Não executarmigrateglobal,migrate:fresh, seeders ou scripts de demonstração. Se a migration já estiver aplicada, conferir o schema e não duplicar a instalação; tabelas parciais ou divergentes exigem reconciliação concreta, não DROP/recriação. Confirmar registo da migration e as três tabelas vazias, incluindo versões e acompanhamento. A release antiga continua compatível com estas tabelas adicionais. - Actualizar o contrato de migrations. Guardar o contrato anterior e acrescentar exclusivamente o caminho/hash normalizado desta migration, após a instalação conferida. Comparar o contrato completo com a fonte revista: qualquer outra diferença deve ser explicada antes de prosseguir. Não regenerar/aprovar cegamente um contrato para o HEAD mais recente. Este passo é uma operação técnica explícita e não corre automaticamente por Git.
- Integrar e transportar código, ainda desligado. Integrar pelo processo Git após a revisão, identificar o SHA resultante em
maine retomar o pipeline/pedidos preservados. Conferir que o contrato corresponde exactamente à fonte resultante; só então o build pode passar. Usar o build isolado e a promoção atómica existentes, sem editar ficheiros da release servida. Confirmar recibo,/build/revision.json, página inicial, biblioteca e gestão única. O módulo permanece desligado e as tabelas vazias; a existência do código não constitui activação. - Activar separadamente. Com código/schema compatíveis conferidos, definir
PROCUREMENT_ENABLED=truena configuração persistente do destino por acção técnica autenticada. Actualizar a cache efectiva de configuração e recarregar processos persistentes conforme a configuração instalada. O pipeline versionado não fazconfig:cachepara a configuração real: não presumir que editar.envbasta quando houver cache. Se se gerarem caches dentro de uma release sujeita atree_hashes, reconciliar os hashes pelo mecanismo de entrega antes de novo deploy/rollback, sem mascarar outras diferenças. Não executar testes comRefreshDatabaseno destino. - Conferir só o delta no destino. Aplicar a lista abaixo, registar revisão, URLs, resultados e actor autenticado sem credenciais. Entregar o link único
https://teste-investidor.tempo.co.mz/gestao-conteudose o guia desta secção com os links QA substituídos pelos correspondentes do destino. Não declarar disponibilização enquanto esta passagem não estiver concluída.
Verificação no destino sem publicar anúncios reais como efeito da instalação:
- Sem sessão:
/concursosresponde 200, incluindo catálogo vazio quando não houver anúncios; navegação pública mostra a secção; não surge autenticação HTTP adicional. UUID de rascunho/inexistente não permite obter ficha ou relatório públicos; anexos privados continuam inacessíveis. - Com conta real já autorizada: gestão única mostra Novo concurso/anúncio e Gerir concursos e anúncios; abrir formulário, guardar um rascunho de verificação claramente identificado, recuperar e pré-visualizar, sem publicar. Registar ID e preservar o rascunho/histórico; não o converter num anúncio real. Conferir scanner/biblioteca existentes por diagnóstico e estado, reutilizando as provas de upload aceites.
- Conta simples: pode abrir a consulta e área de acompanhamento, mas recebe recusa na escrita/gestão; auditor não recebe escrita. Utilizador sem sessão é encaminhado para autenticação nas rotas de gestão. Não alargar grants para passar a prova.
- Se já houver anúncio autorizado no destino, consultar sem sessão ficha, relatório, anexo autorizado e filtros/retorno. Se não houver, a consulta positiva de conteúdo publicado mantém a prova QA aceite e o catálogo vazio é o resultado esperado no destino; não importar exemplos nem publicar um anúncio só para preencher o catálogo. Prorrogação/publicação/resultado já estão cobertos em QA e não são repetidos sobre anúncios reais durante a instalação.
- Conferir que instalação/activação não criou qualquer versão com
published_atpreenchido, não mudoupublished_version_idde anúncios existentes e não alterou documentos/grants. Anúncios que a equipa publicar posteriormente são acções distintas, identificadas pela auditoria.
Reversão com preservação. Em falha de instalação antes do merge, manter flag desligada e release antiga; conservar tabelas eventualmente criadas até diagnosticar a falha e repor o contrato anterior se necessário. Em falha após disponibilização, desligar primeiro a flag na configuração efectiva e preservar um novo snapshot/dump dos dados e ficheiros actuais. Preferir correcção progressiva. Se for preciso reverter código, usar o rollback atómico existente do pipeline para a release anterior compatível, com recibo e configuração desligada; conservar as três tabelas, migrations, audit_events, subscrições e armazenamento partilhado. Esse rollback de código não restaura a base. Conservar o contrato compatível com a linha de código que voltará a ser entregue e documentar qualquer reposição do ficheiro de contrato; a verificação por hashes continua obrigatória.
Não executar down, migrate:rollback global nem restaurar por cima da base activa o backup anterior à instalação: isso eliminaria anúncios, actos, acompanhamentos, auditoria e ficheiros criados depois. O down() da candidata recusa a remoção quando há concursos, mas essa guarda não substitui o plano de preservação. Um restauro extraordinário exige primeiro recuperar numa instância separada e reconciliar os dados posteriores, conservando IDs, versões, relações, hashes e originais; só trocar o destino com um plano próprio revisto. Desligar o módulo torna-o temporariamente indisponível, não elimina nem retira selectivamente anúncios. Ao reactivar a release corrigida, recuperar e conferir os dados existentes.
Origem dos limites: QA/revisão antes de integração e ausência de publicação real na instalação são decisões expressas da Tempo; backup/restauro e autenticação de alterações no destino são requisitos permanentes existentes; pausa coordenada, schema antes de código, flag e contrato são escolhas técnicas impostas pela compatibilidade observada do pipeline. Não constituem nova cadeia organizacional de aprovação. Depois da instalação, as operações correntes de cadastro, prévia, publicação, prorrogação e actualização permanecem na gestão única, sem comandos ou Codex por concurso. As únicas intervenções técnicas deste plano são a instalação/activação e eventual recuperação da plataforma.
Instalação concluída na homologação — 22/10/2026
Autorização expressa da Tempo nesta conversa: «pode instalar», abrangendo a candidata 1bcf34c0 e o procedimento e46f9731. A instalação foi executada por SSH autenticado já disponível; a verificação da interface foi feita pela conta real Osmane Nala, ID 15, após renovação de login/MFA pelo utilizador. Não houve criação de contas, papéis ou aprovadores. A ausência de outras contas não bloqueou esta autorização existente. O guia continua sem declaração de conferência/aceitação pela Tempo.
Sequência efectivamente concluída: pausa coordenada do observador de deploy → backup → restauro isolado conferido → migration selectiva com flag desligada → conferência do schema e contrato → integração/push Git → build/promoção automática → activação separada. Integração funcional f4d0970917e7e8d141f74c136b66138b929141fc, confirmada em /build/revision.json. Activação às 22h51 de 22/10/2026 (África/Johannesburgo; 20h51 UTC). Os commits documentais posteriores conservam o mesmo código funcional. O pipeline está novamente activo e conserva o gate do contrato de migrations; não foi alterado para executar SQL de produção.
Backup privado no servidor: /var/backups/investmoz-procurement-20261022/backup. Dump SHA-256 69de817b288ecb25db4b341375475f2408a47642a8ba69d338b217dcc982854f; arquivo de ficheiros/configuração 7b75c22e730b5600d6e97e1c6dbb4cd93982bdd47e9dd2a63de2359974132674. Restauro realizado num PostgreSQL isolado em container sem rede, porta interna 55441: 171 tabelas, contagens e checksums iguais ao snapshot exportado. Arquivo conferido: 341 ficheiros, incluindo configuração privada; preservados os 340 ficheiros de conteúdo no destino. Não foi copiada uma base QA para a homologação.
Schema instalado: três tabelas, 21 colunas, três PK, cinco FK e um UNIQUE, correspondentes à migration revista; registo em migrations conferido. A conferência inicial do executor tinha uma contagem de colunas incorrecta (22); foi corrigida para as 21 efectivamente declaradas e conferidas antes de actualizar o contrato, sem repetir ou desfazer a migration. Não se alteraram grants. Comparação dos dados preexistentes antes da prova de rascunho: apenas migrations, cache e sessions diferiam do backup; utilizadores, atribuições, biblioteca, oportunidades, cadastro territorial e geometrias permaneciam iguais por checksum. Scanner ClamAV real disponível, assinaturas de 22/10/2026.
Conferência do delta no destino:
/concursosresponde 200 sem sessão ou autenticação HTTP adicional; catálogo vazio é esperado, porque não foram publicados anúncios. Gestão sem sessão redirecciona para login. Conta simples existente não tem autorização de escrita; recusas por perfil e operações editoriais conservam as provas QA aceites, sem criar uma conta de teste no destino.- Gestão única da conta real apresenta Novo concurso/anúncio. Rascunho
b970f0f0-9257-42e1-8365-3358237b55db, referênciaINSTALL-CHECK-20261022, claramente identificado como VERIFICAÇÃO DE INSTALAÇÃO — NÃO PUBLICAR: guardado, recuperado pela lista e pré-visualizado na interface. Um acto de preparação auditado (tender_draft_saved, actor 15). Preservado como rascunho privado; não é um concurso real. - Ficha e impressão desse rascunho devolvem 404 sem sessão; download de documento privado devolve 404. Não se alterou a disponibilidade dos documentos existentes. Uma preparação, uma versão de rascunho, zero versões publicadas e zero acompanhamentos. Nenhum anúncio real foi publicado pela instalação ou como prova. Não foram transportados exemplos QA.
- Publicação/prorrogação/resultados/cancelamento positivos conservam os 8 testes/285 asserções e a passagem visual QA aceites; não foram repetidos sobre anúncios reais na homologação. O build de entrega executou as suas verificações isoladas normais.
Recibo resumido versionado: procurement-installation-receipt-20261022.json. Recibos técnicos completos, logs e backups permanecem privados; capturas e recibo local em outputs/procurement-install-20261022/. A reversão continua a ser desligar a flag e, se necessário, reverter código compatível mantendo tabelas, versões, auditoria e armazenamento; não substituir dados novos pelo backup anterior.
Links finais e guia de operação: entrar na gestão única → Novo concurso/anúncio → preencher regime/edição, entidade, objecto, calendário/fuso e canal → Guardar rascunho. Recuperar em Gerir concursos e anúncios → Recuperar e editar. Carregar/editar originais pela biblioteca ligada no formulário, acompanhar o scan e autorizar a divulgação dos anexos; voltar ao editor e actualizar as opções. Preparar prévia pública → rever conteúdo e motivo público → Publicar este acto, quando a equipa pretender publicar um anúncio autorizado. Para actualizar ou prorrogar, guardar a revisão e escolher o acto correspondente; a prorrogação mostra prazo anterior e novo. Resultado ou cancelamento seguem o mesmo percurso. O rascunho de instalação não se destina a publicação.
Consulta: Concursos e anúncios. Abrir ficha para documentos e relatório imprimível; uma conta simples pode acompanhar, sem apresentar proposta. Documentos, oportunidades, divulgação promocional e concursos mantêm as distinções do guia anterior. Não restam comandos ou intervenção do Codex para cada concurso neste âmbito; a instalação e activação técnica estão concluídas. Geometrias e permissões foram preservadas.
Legado — correspondência integral e avanço privado QA, 22/10/2026
Fonte do saldo: conferência documental fornecida pela Tempo e InvesteMoz — entregas, Fintech e classificação, consultada nesta passagem; originais e reconciliação de 15/10 preservados. O CSV antigo ainda tinha 17 publicados/31 por integrar. Reconciliados os três artigos posteriores, sem os duplicar: 20 publicados, 28 por integrar na homologação, um vazio e um sem título = 50 identidades. Os 29 recursos da biblioteca e as onze variantes de URL não são contagens de artigos distintos.
Lista única para a Tempo: título original → endereço original → endereço no novo portal → estado → pendência. Actualizado também o CSV existente dos 50 artigos; mantém IDs, títulos, origens, hashes e referências anteriores, com campos explícitos para o estado consolidado e data da conferência. Não se criou nova matriz/backlog. Endereços novos ausentes ficam em branco; não foram fabricadas páginas para os conteúdos ainda não disponibilizados.
Nova conferência pública, não nova aceitação funcional: 20/20 páginas na homologação responderam sem login, com componente portal/legacy, ID legado, origem e corpo não vazio correspondentes. A identidade não foi deduzida apenas de HTTP 200 nem do título. IDs da biblioteca foram obtidos da resposta real do destino, sem transportar IDs QA. Consulta HTTP em 22/10/2026 às 23h05 (21h05 UTC). Não é revisão visual integral de cada artigo nem confirmação de actualidade de todas as afirmações. Imagens anteriores não foram reimportadas ou reanalisadas; as referências públicas das fichas foram registadas, sem repetir as provas aceites dos binários.
Cartões educativos: a branch codex/educational-content-cards já é ancestral de main, e o componente com imagem maior/resumo/«Ler o guia» está servido. Conferência visual no destino Explorar Turismo: 12 cartões/links «Ler o guia». Corrige a indicação histórica de revisão ainda pendente, sem atribuir à Tempo uma conferência que não fez. Captura outputs/legacy-correspondence-20261022/guides-homologation.png.
28 conteúdos avançados em QA, sem publicar: dois sectoriais, oito de Trabalho Doméstico e 18 históricos/noticiosos. Preservado o corpo HTML de cada captura, hash do corpo, ID, autor, categoria, datas e origem. Derivadas JSON identificadas pelo formato existente, armazenadas privadamente; imagens não resolvidas não foram substituídas por um fundo genérico nem marcadas como disponíveis. O mecanismo existente documents:import-batch foi reutilizado exclusivamente em simulator_fiscal_delta_20261021_test, porta 55441, com guarda da identidade real. Não foi alargado o importador activo ou o seu âmbito nominal. Conta sintética QA já existente 239; sem novo grant persistente. 28 rascunhos internos, 28 scans reais limpos e 28 reutilizações por SHA-256 na repetição, sem duplicações; publicações e atribuições preservadas.
A primeira passagem importou dez e detectou colisões de identidade nos restantes: o manifesto usava emissor/data/versão iguais para artigos distintos. Corrigida a versão documental dos itens restantes para incluir o ID original do artigo; os dez já criados foram reutilizados por bytes. Sem apagar/recriar originais, simular scan ou classificar artigos como diplomas oficiais. Esta era uma escolha de metadados da preparação, não uma decisão organizacional da Tempo nem uma razão para impedir o cadastro. O importador não foi alterado e os títulos originais foram preservados. Preparações, manifesto, logs e recibo completos mantidos em caminhos privados QA; o recibo versionado contém somente metadados de rastreabilidade.
Lacunas originais conferidas na rede: Mercado Financeiro, ID 171994, HTTP 200, corpo vazio, hash igual à captura. Post 74364, HTTP 200, título vazio, mesmo corpo capturado (274 caracteres HTML, 21 úteis no inventário). Não se encontrou conteúdo/título novo a recuperar. A resolução editorial destes dois exemplares depende do texto/título da Tempo; não se inventou um título nem se usou Fintech/imagem para preencher o artigo vazio. Não bloqueiam os outros 48.
Saldo de integração conservado: os 28 rascunhos QA ainda exigem fechar edição/leitor e entrega/publicação por lotes na homologação. Trabalho Doméstico e notícias mantêm âmbito/data históricos; não foram convertidos em orientação jurídica actual, regras executáveis ou oportunidades vigentes. As dependências de 15/10 estão identificadas como históricas, não como novos requisitos de validação. Nenhum conteúdo novo foi publicado no destino, não houve alteração de schema, mapas, permissões ou integração em main nesta passagem. A integração integral continua aberta; não confundir preparação privada QA com publicação dos 28.
Evidência consolidada: recibo de correspondência, consulta e importação QA. Ferramenta tools/legacy-correspondence-audit.py; --reuse-http regenera a lista sem repetir as consultas públicas. Os hashes das capturas/respostas são distintos dos hashes dos corpos/originais; não foram usados para alegar uma nova edição editorial.
Legado — edição e leitura dos 28 rascunhos em QA, 22/10/2026
Actualiza o saldo anterior: 20 públicos já conferidos, 28 rascunhos privados com editor/leitor disponíveis em QA e dois originais incompletos. Não houve nova importação, repetição da conferência dos 20, integração em main, transporte ou publicação na homologação nesta passagem. A Tempo não declarou ter conferido o guia local ou esta candidata.
Guia curto da equipa. Em gestão única QA, abrir o acervo e localizar o título. Editar artigo recupera o corpo do original, a origem e as datas; corrigir o texto e escolher conservar a imagem de origem, seleccionar uma imagem pública verificada da biblioteca ou não mostrar imagem. Pré-visualizar mostra as alterações ainda sem guardar e não publica. Guardar edição cria uma revisão, preserva o original e retira eventual publicação até nova decisão expressa. Ler revisão guardada recupera a edição persistida. Metadados, classificação/direitos, histórico e publicação continuam no acervo ligado pelo editor; Publicar é uma acção distinta, sujeita às permissões e campos já existentes. Para actualizar um artigo publicado, guardar a revisão, rever a prévia e publicar novamente. A consulta pública usa /artigos/{id-do-destino} e o acesso pela biblioteca; rascunhos não ficam acessíveis por esse endereço.
O leitor mantém a estrutura HTML sanitizada do original enquanto o corpo não for alterado; uma correcção textual fica como edição separada, sem reescrever o ficheiro capturado. Datas e autor de origem continuam identificados. Conteúdos históricos não se tornam oportunidades actuais, diplomas oficiais ou regras de cálculo. A revisão QA do artigo 62413 contém uma nota de demonstração explicitamente marcada QA, guardada pela interface: deve ser revista/corrigida antes de publicação real; não foi removida silenciosamente do pacote.
Imagens e lacunas. Preservadas as 16 referências a imagens no corpo e a referência de capa dos 28 originais. Não se descarregam automaticamente imagens externas. Nesta QA não há exemplar público verificado da capa comum: a prévia informa a ausência e conserva a referência. A capa já aceite no destino deve ser reutilizada pelo SHA-256 28f41f12e10ab34545d8e432f6e8c74f86960e17e0c4a9956f514bcde4881eaa, sem confundir igualdade de URL com igualdade de bytes. Pode seleccionar-se outra imagem autorizada pela interface; nenhuma imagem foi marcada como disponível sem binário verificado. Os dois casos incompletos na origem ficam fora deste lote.
Permissões e origem das restrições. Reutilizados os gestores e as designações editoriais existentes, email verificado, MFA aplicável e exclusão de escrita para auditor/conta simples. Nenhum papel ou aprovador novo. A inclusão destes 28 originais no âmbito editorial decorre do pedido expresso da Tempo. A correspondência por hash exacto dos originais é uma escolha técnica: não depende de IDs ou etiquetas de importação QA que mudem no destino. Validação dos bytes, scan e classificação/direitos seguem requisitos anteriores; controlo de versão e prévia privada são escolhas técnicas para evitar sobreposição de edições e publicação acidental.
Evidência delimitada. Seis testes específicos, 1.000 asserções, passaram na base isolada simulator_fiscal_delta_20261021_test:55441, com transacções revertidas. Percorrem os 28 editores/prévias, edição/recuperação/histórico, conflito de versão, publicação explícita e retirada, classificação, imagem verificada/retirada, sanitização e permissões nominais/MFA. A prova de publicação dos testes foi revertida; os 28 continuam privados. TypeScript e build QA passaram. Na interface, conta sintética QA existente guardou/recuperou a revisão 2 do artigo 62413; leituras de Alumínio “Verde” e do guia de Trabalho Doméstico demonstradas. Não houve alteração de contas reais. Capturas e logs em outputs/legacy-editorial-20261022/; recibo resumido.
Preparação concreta da entrega privada. outputs/legacy-editorial-20261022/legacy-editorial-private-v2.zip, 85 614 bytes, 57 entradas: 28 originais, 28 snapshots/históricos de proveniência e manifesto. SHA-256 177c50d1cc3b1610e62123a2f8b532711a15f875aac2ee0e372636c2f747e8a2. Conferidos os 28 hashes e a integridade do ZIP; zero imagens binárias incluídas e zero escritas de base pelo exportador. Manifesto com publish=false, edições actuais e vínculos de imagem por hash; sem credenciais ou cópia da base. tools/prepare-legacy-editorial-delivery.php só exporta a QA nominal, não instala/importa no destino. Originais e histórico completo ficam privados; IDs/actores QA são proveniência, não identidades ou autores de auditoria no destino.
Sequência para homologação, ainda não executada:
- Rever e integrar a candidata pelo processo Git existente. Não há migration, alteração de schema ou nova dependência de pacote; o deploy de código não transporta estes conteúdos nem publica artigos.
- Antes de escrever no destino, conferir revisão servida, identidade da base e backup consistente de base/armazenamento com restauro isolado demonstrado para a janela. Transportar o ZIP para armazenamento privado, fora da árvore pública, e conferir o hash. Preservar o recibo e o manifesto.
- Com autenticação e permissões existentes, usar o cadastro/upload da biblioteca para cada original ainda ausente, com scan real e classificação privada. Resolver por hash e identidade/versão: reutilizar originais iguais, registar IDs reais e parar apenas o item com conflito, sem sobrescrever. Não repetir a importação QA nem copiar a sua base. Não usar os importadores nominais de Agronegócio/lotes antigos ou um
--actorpara contornar os limites activos; o exportador não alarga esses executores. - Recuperar os recursos pelo portal; aplicar metadados/edição actual pelos formulários autenticados, usando a versão do destino e criando histórico atribuído ao actor real. Conservar os snapshots QA privadamente como proveniência, sem inserir actores QA na auditoria activa. Reutilizar a capa aceite por hash; referências sem binário mantêm aviso. Conferir 28 privados, zero publicações, correspondência original → recurso real e hash, revisão guardada e acessos previstos. Actualizar a lista única com os endereços efectivamente demonstrados.
- A equipa decide e executa a publicação individual no portal, após rever/corrigir/pré-visualizar. Transporte privado, autorização dos metadados e publicação são etapas distintas. Não publicar artigos como efeito da instalação ou da conferência do transporte. Verificar só o delta do destino, sem repetir os 20 aceites ou as provas QA.
Reversão e dependências remanescentes. Para retirar conteúdo, usar a retirada pela interface e preservar originais, revisões e auditoria. Se for necessário reverter código, manter dados e ficheiros; não restaurar um backup antigo por cima de edições/publicações posteriores. Preservar novo snapshot e reconciliar o delta antes de qualquer restauro. A revisão/integração Git, transporte privado, backup/restauro e upload/scan autenticado iniciais ainda são trabalho de entrega; não estão declarados concluídos nem constituem tarefas recorrentes de cada edição. Depois de disponibilizado este delta, rever, corrigir, pré-visualizar, guardar, recuperar, publicar e retirar estes conteúdos não exigem comandos ou Codex. A revisão editorial efectiva dos textos pela equipa continua distinta da demonstração do percurso. Geometrias não foram alteradas.
Legado — cadastro privado concluído na homologação, 22/10/2026
Actualização da entrega anterior: a candidata fb4e7d89 foi revista tecnicamente e integrada pelo Git em 65eddf6bc7025c81cbd7b0c5918b6ae8bdb1c1f6, revisão funcional servida durante esta conferência. Sem migration ou novas dependências. Backup anterior às escritas: dump SHA-256 8658b5fa0d1ef16c9fc9be90969badde6007443aa474fe4a9377f16d80fe6e92, arquivo de ficheiros/configuração 1d98b6200ffae11bb07dc600daa6416b3b1b90735de42791858a07a0caa63552; restauro isolado com 174 tabelas e 341 ficheiros conferidos. Backup e pacote continuam privados em /var/backups/investmoz-legacy-editorial-20261022/. O transporte já concluído não foi repetido nesta retoma.
28 originais cadastrados, 28 recursos privados, zero publicações. Reutilizado no servidor o pacote v2 com SHA-256 177c50d1cc3b1610e62123a2f8b532711a15f875aac2ee0e372636c2f747e8a2. A ingestão usou os endpoints HTTPS existentes de upload, cadastro e edição, com referência à sessão real recente de Osmane Nala (actor 15), obtida após login e MFA normais; sem criar sessão/MFA, atribuir papéis ou escrever directamente nas tabelas de conteúdo. O operador autenticado executou esta passagem inicial a partir dos ficheiros já transportados; a equipa não precisa deste executor para rever ou publicar os recursos agora disponíveis. O limite de uploads foi respeitado. Uma resposta intermédia não pôde ser descodificada pelo invólucro técnico; a retoma encontrou os originais por hash e continuou sem nova cópia dos já cadastrados. Não foi atribuída uma causa não demonstrada a essa interrupção.
Cada original foi resolvido por hash, com conferência de unicidade antes do cadastro; a classificação permaneceu internal, os direitos/estado documental anteriores não foram convertidos em autorização de publicação e os scans reais ficaram limpos, com hash analisado igual aos bytes actuais. IDs do destino 32–59, distintos dos IDs QA. A identidade de versão inclui o identificador do original, evitando colisões entre artigos da mesma data. Os snapshots QA permanecem como proveniência no pacote privado; o histórico activo foi criado pelos endpoints com o actor real, sem importar identidades QA como autores da auditoria. A edição QA do artigo 62413, incluindo a nota explicitamente marcada QA, foi conservada para revisão da equipa.
Conferência operacional do delta, concluída às 23h54 de 22/10/2026 (África/Johannesburgo; 21h54 UTC): 28/28 encontrados pela pesquisa de rascunhos; 28/28 editores e leituras privadas responderam 200, com identidade, fonte e corpo recuperado correspondentes; 28/28 endereços públicos /artigos/{id} devolveram 404 sem sessão. Na interface, a conta real pesquisou «15/30», abriu o artigo 62413, preparou a prévia, guardou o mesmo corpo como revisão 3 e recuperou essa revisão, sempre privada. A gravação de conferência não acrescentou texto de demonstração ao corpo. Não se repetiram as provas QA ou as consultas HTTP dos 20 artigos públicos.
Preservação por comparação dos registos preexistentes: 32 documentos, 31 recursos, 63 revisões e 19 associações, incluindo os 20 artigos públicos, permaneceram iguais. Também preservados 17 utilizadores, atribuições de papéis, par de superutilizadores, aprovações de segurança, 1.921 entradas territoriais e 408 geometrias. Nenhuma publicação foi feita por esta entrega. As 16 referências de imagens no corpo permanecem discriminadas; a capa comum é o exemplar anterior, explicitamente referenciado nos originais e reutilizado pelo hash exacto 28f41f12e10ab34545d8e432f6e8c74f86960e17e0c4a9956f514bcde4881eaa, não uma imagem presumida. Referências sem exemplar verificado não foram preenchidas com substitutos.
Guia da equipa no destino: abrir a gestão única → Gerir conteúdos, versões e histórico → escolher Rascunhos, pesquisar o título e abrir Editar artigo ou Ler / pré-visualizar artigo. Corrigir o texto e o tratamento de imagem → Pré-visualizar alterações → Guardar artigo como rascunho → Ler revisão guardada. Usar Voltar ao acervo para metadados e publicação para corrigir título, descrição, origem, enquadramento, acesso e direitos. Publicar continua separado, conforme a autorização e os campos existentes, quando a equipa decidir publicar. Guardar uma edição de um artigo publicado retira-o até nova publicação expressa. Não há comandos ou intervenção do Codex neste percurso corrente.
Recibo: cadastro, acessos e preservação no destino. A lista única dos 50 e o CSV existente contêm os endereços privados efectivos dos 28; não são links de artigos já publicados. Capturas locais em outputs/legacy-editorial-install-20261022/, incluindo editor-recovered-homologation.png. Mantêm-se dois originais incompletos e a revisão editorial dos textos pela equipa. A Tempo não declarou ter conferido commit, pacote ou guia. A carteira vazia e os projectos âncora continuam como falha separada, sem causa confirmada; esta entrega não a resolve.