Prioridade não é escopo
O OpenCode CLI precisava ser investigado primeiro. Ele estava quebrado por um postinstall bloqueado, foi reparado em um lote B1/R1 e voltou a responder na versão 1.18.25. Mas terminar ali confundiria prioridade com conclusão. O foco ordena a investigação; não elimina o restante do ambiente.
O inventário global
A segunda passagem foi B0/R0, somente leitura. Ela cruzou CLIs, npm, APT, Snap, o ambiente Python do Hermes, Docker, Compose, serviços HTTP, sockets, recursos, reboot, Tailscale, LM Studio, Qdrant e o dashboard externo.
O resultado foi misto: quatro patches npm aguardam lotes separados; há onze entradas APT e uma revisão do Snap Code; o venv Hermes tem 41 pacotes outdated. O Compose efetivo continua em 5.4.0 enquanto o pacote instalado aponta para 5.5.0. Nenhuma dessas diferenças autoriza uma atualização automática.
Saúde também tem camadas
Open WebUI, TTS, media, Hermes e os três containers Docker responderam com saúde. Ao mesmo tempo, LM Studio e Qdrant não estavam disponíveis, e o External Pi estava offline; o túnel persistente repetia tentativas sem alcançar o destino.
Essa é a razão para o relatório terminar como PARTIAL. Um endpoint 200 não prova atualização, um pacote instalado não prova launcher funcional e um serviço systemd ativo não prova que seu consumidor remoto esteja alcançável.
O próximo passo correto
Os candidatos foram separados por autoridade: auth e restart do Hermes são operator-owned; Pi, LM Studio e Qdrant precisam recuperar contexto antes de qualquer mutação; npm, APT, Snap, venv e Compose ganham gates próprios. A auditoria global não atualizou nada. Ela devolveu ao Lab um mapa honesto do que pode avançar e do que ainda precisa ser entendido.