Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Malformed model cost fields crash session usage accounting (DecimalError)

Aberta Para iniciantes
#1,573 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
76/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
typescript
Domínio
backend

Direção de pesquisa

Comece por Session.getUsage em packages/opencode/src/session/index.ts e acompanhe como os campos de custo chegam a Decimal.mul durante o cálculo do uso da etapa. Verifique como os testes existentes cobrem custos de modelo malformados ou não finitos e adicione cobertura para que campos inválidos sejam tratados como zero, enquanto os componentes válidos continuam sendo contabilizados. O trabalho estará concluído quando valores malformados não fizerem mais o turno falhar nem zerarem componentes de custo não relacionados.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Session.getUsage (packages/opencode/src/session/index.ts) passes model cost fields straight into Decimal.mul. When a model's cost.input/output/cache.* is malformed (an object or string from a custom provider config or a bad models.dev entry), decimal.js throws [DecimalError] Invalid argument: [object Object] while the processor computes step usage, so the turn fails on cost accounting instead of just recording a 0 cost for the bad field. NaN cost fields also make the whole cost 0 rather than only dropping the bad component.

Upstream fixed this in anomalyco/opencode#43248 by treating non-finite cost fields as 0.

Tracking: #1478

Linguagem predominante
TypeScript
Estrelas
812
Forks
123
Merge médio
1d 16h
PRs com merge (30d)
83

Preparar o ambiente

Abrir no Codespaces

Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de AltimateAI/altimate-code

Todas as issues de AltimateAI/altimate-code

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.