Files
takana/scripts
SergioandClaude Opus 5 c13be792ab atuq: el camino de native messaging EXISTE — sonda, y tres cosas que no eran obvias
Todo el §6 del SDD 26 —sct, descargas al CAS, archivo con RAG, torrent— pasa por
un solo mecanismo: un proceso Rust hablando native messaging con la extensión.
Antes de escribir ese crate en tawasuyu conviene saber si el camino existe en
NUESTRO build, que es propio, rebrandeado y con MOZ_REQUIRE_SIGNING vacío.

Existe. Una extensión de diez líneas y un host de tres:

    positivo  MENSAJE {"ok":true}
    control   DESCONECTADO No such native application puente_atuq

El control no sólo falla: NOMBRA la causa, que es lo que confirma que la ruta del
manifiesto es la que se probó.

TRES COSAS MEDIDAS QUE NO ERAN OBVIAS:

1. El manifiesto va en `/usr/lib/mozilla/native-messaging-hosts/`, NO en el
   appdir. Gecko lo busca por `XRESysNativeManifests`, que en Linux sale de un
   `/usr/lib/mozilla` compilado, y el rebranding a atuq no lo mueve.

2. Un host que escribe y SALE pierde el mensaje. La primera sonda hacía printf y
   terminaba: el puerto llegaba a onDisconnect «sin error y sin mensaje», o sea
   el peor informe posible — parece que el camino no existe. Con un sleep detrás
   del printf, el mensaje aparece. El host de verdad es un proceso largo, así que
   en producción no se nota; en una prueba, sí.

3. `ExtensionSettings.install_url` con `file://` NO instala nada, y sin una línea
   de log. Probado con normal_installed y con force_installed, y con el XPI dentro
   y fuera del appdir: ninguna instala. Lo que instala las extensiones de atuq es
   el ESCANEO de `distribution/extensions/`. La política sirve para fijarlas y
   configurarlas; leerla como «esto es lo que las instala» es un error fácil,
   porque los dos mecanismos apuntan a los mismos ficheros y se tapan uno al otro.

`sendNativeMessage` no sirve para diagnosticar: devuelve «An unexpected error
occurred» para todo. El error del puerto de `connectNative` es el único que
nombra la causa.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NNFzrqFBEt6W7maGJKf2Xs
2026-09-07 20:27:07 +00:00
..