O primeiro bug não era só “faltou mídia”. Era mais perigoso: a automação aceitava evidência estrutural e continuava falando de X.app, mesmo quando o pedido exigia Chrome.
X.app era a fonte da verdade. Se artigo nativo aparecia, a fila dizia que precisava de captura por app nativo. Isso criava falso positivo quando o pacote existia, mas o corpo do artigo não.
O plugin oficial do Chrome abre `https://x.com/i/bookmarks`, lê DOM, texto visível, links, imagens, vídeos e screenshots. X.app fica fora do fluxo principal.
O discovery agora grava `chrome_url_discovery.jsonl` com `source: "codex_chrome_plugin"` e preserva compatibilidade sem deixar o relatório dizer que X.app foi usado.
scripts/chrome-bookmark-discovery-repl.mjs scripts/rebuild-from-discovery.mjs scripts/write-current-rebuild-status.mjs
Qual é o sinal mínimo de que o run respeitou o contrato?
Correto: validação estrutural sozinha não prova ferramenta nem captura real.