Paperclip canary/v2026.704.0-canary.1
Resumo
O release canary consolida duas versões publicadas entre 2026-07-03 e 2026-07-04. A principal mudança é a inclusão de um terminal SSH embutido no fluxo de criação e atualização de imagens customizadas, usando sessão websocket no servidor, tokens curtos, pinning de host-key por sessão e limpeza gerenciada pelo servidor.
A versão também adiciona um backstop de reconciliação para dependency wake. A origem não detalha esse item além do rótulo, então a leitura editorial mantém a descrição conservadora e concentra a análise técnica no terminal de setup de imagem customizada.
Novidades
- Paperclip canary/v2026.704.0-canary.0 — Terminal SSH no navegador: o fluxo de criação e atualização de imagem customizada passa a abrir um terminal SSH embutido na UI quando a sessão de setup expõe dados de conexão.
- Paperclip canary/v2026.704.0-canary.0 — Sessão websocket de terminal: o servidor passou a acompanhar sessões de terminal com emissão de token de conexão, anexação via websocket, expiração, redimensionamento, entrada de comandos e encerramento.
- Paperclip canary/v2026.704.0-canary.0 — Autenticação fora da URL: a autenticação do terminal saiu da URL do websocket e passou para o primeiro frame JSON de autenticação, reduzindo exposição em logs e histórico de infraestrutura.
- Paperclip canary/v2026.704.0-canary.0 — Pinning de host-key SSH: cada sessão de terminal passa a fixar o fingerprint SHA-256 observado durante a vida da sessão, usando uma regra TOFU porque o payload do provedor ainda não fornece fingerprint confiável.
Melhorias
- Paperclip canary/v2026.704.0-canary.0 — Setup de imagem customizada: operadores deixam de depender do fluxo principal de copiar comando SSH para um terminal externo, pois a configuração pode acontecer dentro da própria tela de ambiente.
- Paperclip canary/v2026.704.0-canary.0 — Ciclo de vida da sessão: as rotas de setup continuam escopadas por empresa, e sessões ativas de terminal são fechadas quando o setup termina, expira, é cancelado, perde conexão ou o servidor é encerrado.
- Paperclip canary/v2026.704.0-canary.0 — API e UI de ambiente: a API e a interface de ambientes foram atualizadas para abrir, reconectar, mostrar status, autenticar, redimensionar e manter o terminal ativo durante a vida da sessão de setup.
- Paperclip canary/v2026.704.0-canary.1 — Dependency wake: o release adiciona um backstop de reconciliação para dependency wake, mas a origem não descreve a superfície exata afetada.
Correções
- Paperclip canary/v2026.704.0-canary.0 — Lockfile gerado: o delta gerado de lockfile foi removido do PR, deixando a regeneração temporária para o CI em mudanças de manifesto.
- Paperclip canary/v2026.704.0-canary.0 — Conflito de importação: depois do merge com
origin/master, o conflito de importação emCompanyEnvironments.tsxfoi resolvido e a suíte focada foi executada novamente.
Breaking changes
Nenhuma quebra de compatibilidade foi declarada nas notas publicadas desta sequência canary. O terminal externo por comando SSH continua registrado como fallback quando navegador, proxy ou rede não mantêm a sessão websocket.
Ponto de Atenção
- Paperclip canary/v2026.704.0-canary.1 — Terminal SSH embutido: a mudança adiciona websocket routing, estado de sessão em memória, dependências de pacote e um novo caminho de UI para setup de imagem customizada. Teste sugerido: inicie uma criação de imagem customizada, abra o terminal no navegador, envie comandos simples, redimensione a janela, reconecte a sessão e finalize o setup verificando se o terminal é fechado.
- Paperclip canary/v2026.704.0-canary.1 — Tokens e host-key SSH: tokens de anexação são curtos, e o pinning de host-key vale apenas durante a sessão porque o provedor ainda não entrega fingerprint confiável. Teste sugerido: tente reconectar com a mesma sessão, depois simule expiração ou reinício do servidor e confirme que tokens antigos e pins em memória não são aceitos.
- Paperclip canary/v2026.704.0-canary.1 — Fallback SSH externo: o comando SSH externo segue importante para ambientes nos quais o navegador, o proxy ou a rede interrompem websocket. Teste sugerido: bloqueie o websocket em um ambiente controlado e confirme que o operador ainda consegue concluir setup pela rota externa documentada.
Notas da versão
A verificação de origem registrou seis arquivos de teste com cinquenta e oito testes aprovados, typecheck e build para servidor e UI, typecheck:build-gaps, git diff --check e varredura local de conteúdo sensível no diff. As checagens remotas também foram registradas como verdes depois do commit de implementação e do hardening pós-merge de 2026-07-03.