docs(portal): diagnose browser bridge and record scoped review
tests / ci (push) Canceled after 0s

This commit is contained in:
2026-11-10 11:11:40 +02:00
parent 03bcaf38cd
commit ff726e577f
@@ -0,0 +1,43 @@
# Diagnóstico da ligação ao navegador e preparação da entrega
O portal não foi instalado. S08 `67344418`, o registo `659c039b` e o pacote selado de contador/aliases permanecem intactos. A revisão visual continua por executar. Este diagnóstico não atribui uma falha ao portal nem substitui testes visuais por testes de componentes.
## Ligação ao navegador
Diagnósticos executados com os scripts fornecidos pelo plugin Chrome, versão local `26.1103.32239`:
| Componente | Resultado observado |
| --- | --- |
| `chrome-is-running.js --browser chrome --check` | Chrome em execução; exit 0 |
| `installed-browsers.js --json` | Chrome e Edge instalados; navegador predefinido encaminhado pelo Parallels |
| `check-extension-installed.js --browser chrome --json` | Extensão `hehggadaopoacecdllhhajmbjkdcmajg`, versão `1.26.1102.11740_0`, instalada e habilitada no perfil Default; exit 0 |
| `check-native-host-manifest.js --browser chrome --json` | Manifesto, nome, origens permitidas e registo HKCU correctos; exit 0 |
| Processo nativo | `extension-host.exe`, PID 19492, presente; não foi terminado |
| Edge | Extensão habilitada em Profile 2; manifesto correcto. Usa o mesmo host nativo. Não foram alterados perfis ou permissões |
| Alternativa suportada | `mcp__cua_repl.js`: `cua.createBrowserTab('iab','about:blank',{visible:true})` devolveu exactamente `The browser access host is unavailable` |
Na tentativa anterior, o inventário nativo identificou a nova janela Chrome `658216`, título “Tempo - Google Chrome”, mas o inventário de browsers devolveu `Browsers: Error: The browser access host is unavailable`. `cua.getApp({windowId:658216})` encerrou o controlo com `could not determine the current browser URL on Windows with enough confidence to enforce policy`. Nesta ronda foi testado o navegador integrado pelo mecanismo documentado, sem repetir a abertura do Chrome ou provocar novamente o encerramento na confirmação de URL.
**Camada da falha delimitada:** o serviço de acesso ao navegador exposto à sessão está indisponível tanto para descoberta Chrome como para criação IAB, antes de qualquer navegação. A instalação da extensão e o manifesto passam nos diagnósticos. Isso exclui tratá-los como comprovadamente ausentes, mas não demonstra uma comunicação funcional fim a fim. A causa interna da indisponibilidade desse serviço não ficou estabelecida.
Conferidos registos locais do desktop e SQLite de logs, apenas para diagnóstico, sem copiar credenciais ou histórico de navegação para a entrega. Há eventos anteriores `browser_use_iab_backend_startup_ready` e pipes `codex-browser-use-*` existentes. Não foi encontrado um erro específico que explique a indisponibilidade actual. O catálogo local `chrome-native-hosts-v2.json` conserva entradas antigas: a entrada da versão actual indica PID 5564, já inexistente, com última actualização em 07/11; isto é uma anomalia de registo observada, **não uma causa raiz demonstrada**. Não se editaram esses registos nem se ligou manualmente aos pipes.
O transporte nativo configurado é stdio/pipes; não foi identificada uma porta TCP do host em conflito. Conferidas as ligações locais: 55441 pertence ao PostgreSQL PID 20756; 8000 ao servidor PHP PID 14316; 5173 ao Vite PID 17180. Sem ocupação observada em 5180, 9222 ou 9223. Não se activou depuração remota, não se libertaram portas e nenhum desses serviços foi parado. A ausência de um conflito observado não é prova de toda a configuração de rede.
**Intervenção específica para recuperar:** guardar o trabalho e encerrar/reabrir a aplicação desktop ChatGPT/Codex, para recriar o serviço de acesso e a ligação desta sessão; reiniciar só Chrome já foi tentado sem resolver. Essa operação termina a sessão de controlo e deve ser feita pelo utilizador. Depois, a primeira verificação é `cua.listBrowsers()` e uma abertura IAB, antes de tocar em S08. Se o serviço continuar indisponível, reinstalar o plugin Browser/Chrome pela interface oficial de Plugins e repetir o diagnóstico, ou fornecer estes erros ao suporte da aplicação. Não reinstalar o portal ou desligar QA.
O guia local [Chrome troubleshooting](C:/Users/macbook/.codex/plugins/cache/openai-bundled/chrome/latest/docs/chrome-troubleshooting.md) determina: “Do not install or repair the native host yourself.” Não foi executada reparação manual do manifesto/host. A [documentação oficial de configuração](https://developers.openai.com/training/walkthroughs/using-your-computer-and-browser) descreve a instalação dos plugins Browser e Chrome e da extensão; não estabelece a causa interna deste erro específico.
## Revisão do código e compatibilidade
`git fetch --no-tags origin main` executado com sucesso. `main` e `origin/main` continuam em `2209b8382019b0bbc2be57b3f6e665a3c94dd032`, a base preparada. Nenhum push ou alteração de main.
Revistos os deltas de S08, formulário/endpoint/contexto e condicionais de autoridade; curadoria com autorização nativa/MFA, prévia vinculada ao actor/versão/intent, transacção e recuperação; sitemap limitado ao scope público/origem configurada; pré-dossier sobre a projecção autorizada comum. Esta revisão não é nova homologação integral nem ensaio de carga.
Identificado um caso adicional em S08: uma resposta de gravação que muda `path.next.code` pode fechar a fase controlada, apesar de o fragmento continuar em `#S08`. Correcção adicional em `03bcaf38`: o efeito de abertura também acompanha essa mudança, sem alterar campos ou contrato de gravação. Commit original preservado. Executado apenas o teste afectado com `node --test --test-name-pattern='server next-stage updates' tests/frontend/licensing-stage.test.mjs`: 1/1 aprovado; TypeScript global aprovado. As outras seis provas aceites e as suites do servidor não foram repetidas.
## Entrega preparada e saldo
Entrega incremental de fontes em `outputs/entrega-revisada-20261110/`, com manifesto, patches cumulativos/incrementais, série de commits e reversões. A conferência em índices Git temporários valida aplicação e reversão contra a base de main e contra a árvore selada do contador/aliases, sem tocar no índice de trabalho ou instalar ficheiros. Os hashes finais constam do manifesto e do recibo de compatibilidade do pacote. Builds QA anteriores permanecem provas locais, não artefactos para produção; o delta adicional tem prova dirigida e TypeScript, sem novo build instalado.
Continuam separados: revisão visual real de S08 e dos percursos afectados; instalação/activação; confirmação operacional autenticada no destino. O pacote não autoriza publicação automática nem concessões ou operações de negócio. Cluster QA 55441 ligado; servidor e workers existentes preservados.