Bug não documentado encontrado no código do computador de orientação da Apollo 11 usando IA e linguagem de especificação

✍️ OpenClawRadar📅 Publicado: April 17, 2026🔗 Source
Bug não documentado encontrado no código do computador de orientação da Apollo 11 usando IA e linguagem de especificação
Ad

Encontrando um bug em um dos códigos mais examinados da história

O código do Computador de Orientação Apollo (AGC) está disponível publicamente desde 2003, transcrito de listagens impressas do Laboratório de Instrumentação do MIT. Em 2016, o repositório GitHub de Chris Garry viralizou, e milhares de desenvolvedores examinaram esse código assembly rodando em hardware com 2K de RAM apagável e um clock de 1MHz. Apesar desse escrutínio, nenhuma verificação formal, verificação de modelo ou análise estática havia sido publicada contra o código de voo até agora.

O bug: Um vazamento de bloqueio de recurso no controle do giroscópio

O bug está no subsistema da Unidade de Medição Inercial (IMU), que gerencia a plataforma baseada em giroscópio que informa à espaçonave para que direção ela está apontando. O AGC gerencia a IMU através de um bloqueio de recurso compartilhado chamado LGYRO. Quando o computador precisa aplicar torque aos giroscópios (para corrigir deriva da plataforma ou realizar alinhamento estelar), ele adquire LGYRO no início e o libera quando todos os três eixos foram torquedos.

O problema ocorre durante o 'engaiolamento' - uma medida de emergência onde uma braçadeira física trava os gimbals da IMU no lugar para proteger os giroscópios de danos. Quando o torque é concluído normalmente, a rotina sai via STRTGYR2 e o bloqueio LGYRO é liberado. Mas quando a IMU é engaiolada enquanto um torque está em andamento, o código sai por uma rotina chamada BADEND, que não libera o bloqueio.

Duas instruções estão faltando: CAF ZERO TS LGYRO - apenas quatro bytes. Uma vez que LGYRO fica travado, toda tentativa subsequente de aplicar torque aos giroscópios encontra o bloqueio mantido, dorme esperando por um sinal de despertar que nunca virá, e trava. Isso desabilitaria o alinhamento fino, a compensação de deriva e o torque manual do giroscópio.

Ad

Como foi encontrado: IA e especificações comportamentais

Os pesquisadores usaram Claude e Allium, sua linguagem de especificação comportamental de código aberto, para destilar 130.000 linhas de assembly do AGC em 12.500 linhas de especificações. A especificação modela o ciclo de vida de cada recurso compartilhado: quando é adquirido, quando deve ser liberado e em quais caminhos. Essa abordagem revelou uma falha que a leitura e emulação haviam perdido.

As especificações foram derivadas do próprio código, e o processo apontou diretamente para o defeito. Isso representa uma abordagem diferente do escrutínio anterior, que se concentrava em ler o código, emular o código e verificar a transcrição.

Contexto histórico e impacto potencial

Em 21 de julho de 1969, enquanto Neil Armstrong e Buzz Aldrin caminhavam na superfície lunar, Michael Collins orbitava sozinho no Módulo de Comando Columbia. A cada duas horas ele desaparecia atrás da Lua, fora do contato de rádio com a Terra. Durante cada passagem ele executava o Programa 52, um alinhamento por observação estelar que mantinha a plataforma de orientação apontada na direção correta. Se a plataforma derivasse, a queima do motor para trazê-lo para casa apontaria para o lado errado.

O bug poderia ter se manifestado se Collins acidentalmente acionasse o interruptor de engaiolamento enquanto o computador estava aplicando torque aos giroscópios. O código lidaria com isso graciosamente detectando o engaiolamento, abandonando o torque e saindo - mas o alinhamento P52 falharia, e a plataforma de orientação poderia perder sua referência.

📖 Read the full source: HN AI Agents

Ad

👀 See Also

DeepSeek-V4 Pro e Flash: 1,6 trilhão de parâmetros, contexto de 1 milhão de tokens, atenção híbrida
News

DeepSeek-V4 Pro e Flash: 1,6 trilhão de parâmetros, contexto de 1 milhão de tokens, atenção híbrida

DeepSeek-V4-Pro (1,6 trilhão de parâmetros, 49B ativos) e V4-Flash (284 bilhões de parâmetros, 13B ativos) suportam contexto de 1 milhão de tokens. A nova atenção híbrida (CSA + HCA) reduz os FLOPs de inferência por token para 27% e o cache KV para 10% do DeepSeek-V3.2.

OpenClawRadar
Por que um Desenvolvedor Mantém Tags de Coautoria de IA em Commits
News

Por que um Desenvolvedor Mantém Tags de Coautoria de IA em Commits

Um desenvolvedor explica por que deliberadamente inclui 'Co-Authored-by: Claude' em seus commits do Git, comparando isso aos dados EXIF na fotografia e discutindo os desafios das alterações de código assistidas por IA cirúrgica.

OpenClawRadar
O volume de código gerado por IA está sobrecarregando engenheiros seniores, mostra estudo
News

O volume de código gerado por IA está sobrecarregando engenheiros seniores, mostra estudo

Usuários de IA mesclam 98% mais pull requests com assistência de IA, mas engenheiros seniores relatam aumento da carga cognitiva e esgotamento. Pesquisas mostram que a detecção de defeitos cai de 87% para PRs com menos de 100 linhas para 28% para PRs com mais de 1.000 linhas.

OpenClawRadar
A atualização automática do Cron quebrou o OpenClaw devido a um erro de validação de configuração.
News

A atualização automática do Cron quebrou o OpenClaw devido a um erro de validação de configuração.

Um trabalho cron configurado para atualizar automaticamente o OpenClaw encontrou um problema de validação de configuração com o campo cliBackends, causando perda de conexão. A correção envolveu remover a seção problemática e reiniciar o gateway.

OpenClawRadar