Claude Code v2.1.248 foi publicada às 22:12:20 UTC em 27 de agosto. Entre cerca de quarenta entradas do changelog, há esta, literalmente: "Fixed /ultrareview and locally seeded cloud sessions uploading uncommitted prod.env-style and *.tfvars files, or to editor swap, temp, and backup copies of credential files (e.g. key.pem.tmp, id_rsa.swo); they now stay on your machine."
O que esses nomes de arquivo significam
Um prod.env não commitado contém credenciais de produção. Um arquivo .tfvars traz variáveis do Terraform — com frequência chaves de acesso a nuvem e segredos de infraestrutura. id_rsa.swo é um arquivo de swap do Vim para uma chave SSH privada. Não se trata de artefatos incidentais; são os arquivos específicos que um desenvolvedor mantém fora do controle de versão justamente por serem segredos.
O outro destaque da versão
O mesmo lançamento acrescenta --restricted (ou CLAUDE_CODE_RESTRICTED=1), que "removes the built-in tools that run commands or code and WebFetch (unless named in --tools), keeps file tools inside the working directory, refuses bypassPermissions, and ignores user, project and local settings files." Também na 2.1.248: mensagens entre sessões ampliadas para Bedrock, Vertex e Foundry, uma descrição da Workflow tool reduzida de cerca de 5,7 mil tokens para 1 mil, e uma correção para uma falha de prompt-cache que ocorria "roughly once an hour in long sessions" após a renovação de um token OAuth.
O que a leitura comum erra
O problema do enquadramento é a ausência de enquadramento. Uma correção de exfiltração de segredos foi publicada como um item sem destaque — sem comunicado de segurança, sem identificador GHSA, sem CVE, sem aviso de "ação necessária", sem data de introdução divulgada e sem faixa de versões afetadas. Os usuários afetados não têm como determinar se suas chaves saíram da máquina, nem por quanto tempo.
Segundo, o detalhe de .swo e .tmp identifica a classe do bug: o uploader filtrava nomes canônicos de credenciais, mas não as variantes geradas pelo editor ao lado delas. Isso é uma falha de denylist, um problema de classe de design, tratado aqui como uma correção pontual.
Terceiro, --restricted é uma opção de hardening, não um sandbox. Leia a formulação: ele remove ferramentas e ignora arquivos de configuração. Isso reduz capacidades dentro do processo, não cria uma fronteira no sistema operacional — e o nome convida o leitor a supor contenção. Ele também ignora silenciosamente arquivos de configuração de usuário, projeto e locais, uma mudança de comportamento que surpreenderá quem o ativar esperando apenas a remoção de ferramentas.
Por fim, o ritmo obscurece a gravidade: com três lançamentos em 26 horas, e a 2.1.250 rotulada apenas como "Bug fixes and reliability improvements," uma correção relevante para segurança fica indistinguível de uma rotina de ajustes.
