Fluxos de trabalho · Diferenças angulares mínimas com sinal ×
from math import isfinite
def angle_delta(source, target):
for value in (source, target):
if type(value) not in (int, float):
raise ValueError("angle.number")
if abs(value) > 1000000000000 or not isfinite(value):
raise ValueError("angle.range")
source, target = source % 360, target % 360
return (target - source + 180) % 360 - 180
✳Retorne a menor diferença angular com sinal entre menos 180 inclusivo e 180 exclusivo.
✓ AlteraçõesRevise antes de aplicar ↗
Ilustração do ambiente
Projeto
Teste a volta completa e ângulos opostos, rejeitando valores não finitos, booleanos e magnitudes acima de 1000000000000 antes de normalizar cada operando.
Revise antes de aplicar
Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.
Modelos
Configure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.
from math import isfinite
def angle_delta(source, target):
for value in (source, target):
if type(value) not in (int, float):
raise ValueError("angle.number")
if abs(value) > 1000000000000 or not isfinite(value):
raise ValueError("angle.range")
source, target = source % 360, target % 360
return (target - source + 180) % 360 - 180
Ambiente de programação com IA
Explicite as premissas geométricas na revisão do código
ArcTern é um ambiente de programação com IA para Windows destinado a desenvolvedores que examinam comportamentos da aplicação relacionados à geometria. Abra o projeto e descreva a discrepância visível, incluindo as unidades e convenções usadas. Um modelo conectado pode ajudar a inspecionar o cálculo e seus consumidores antes de propor edições, para que a revisão contemple o recurso que depende do resultado.
O exemplo angles.py sugere uma tarefa sobre movimento através de um limite angular. Pergunte como o código representa as direções de origem e destino, qual sinal indica cada direção e o que deve acontecer em uma meia-volta exata. Essas decisões pertencem ao contrato da aplicação. Use o exemplo como ponto de partida para uma investigação focada e depois examine o código de exibição ou controle que usa o valor retornado.
Você pode escolher um modelo de IA sem filtros quando disponível por um endpoint suportado compatível com OpenAI ou da Anthropic. Configure o endereço e as credenciais exigidos, considerando os limites de ferramentas e contexto do serviço. Revise a alteração proposta e execute verificações da passagem de fim para início da volta, de direções iguais e do caso ambíguo de meia-volta. Inclua o consumidor final na verificação. Um cálculo pode satisfazer uma fórmula e ainda divergir da convenção de direção esperada pelo restante do software.
Planeje uma correção relacionada à geometria
O que incluir em um exemplo de erro angular?
Forneça origem e destino, suas unidades, o sinal esperado e onde o resultado aparece. Inclua um caso que atravesse o limite entre uma volta completa e zero. Esses detalhes impedem que uma suposição de convenções se passe por correção.
Como resolver uma meia-volta exata?
Escolha o comportamento exigido pela aplicação e explicite-o. Ambas as direções podem se adequar a uma convenção matemática, mas os chamadores precisam de consistência. Peça ao assistente que localize premissas existentes antes de mudar o desempate em uma função auxiliar compartilhada.
Um teste da função auxiliar comprova o resultado visual?
Ele comprova apenas o cálculo testado. Confira também o componente que interpreta seu sinal, escala ou unidades. Um eixo invertido ou outra convenção posterior ainda pode produzir o movimento errado mesmo quando os testes da função auxiliar passam.
Conectar um modelo sem filtros elimina o trabalho de revisão?
Não. O rótulo descreve o modelo selecionado, e não a confiabilidade de seu raciocínio geométrico. Inspecione a derivação segundo as convenções declaradas e execute casos concretos. Restrições e capacidades do endpoint continuam específicas do serviço configurado.