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

build_parameters checks the parameter tree root instead of the parameter

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

Mantenedores costumam responder em até 2 dias

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
1/5
Tempo estimado
Menos de uma hora
Facilidade para iniciantes
82/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
python
Domínio
backend

Direção de pesquisa

O bug está em PolicyEngineCountry.build_parameters em policyengine_api/country.py, onde o último elif verifica isinstance(parameters, ParameterNode) na raiz em vez do parameter atual. Leia o despacho por tipo dessa função para confirmar o nome da variável do loop e depois altere a condição para testar parameter. Está concluído quando o ramo testa o descendente e os testes existentes de build_parameters continuam passando.

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

Descrição

In PolicyEngineCountry.build_parameters (policyengine_api/country.py), the last branch of the type dispatch is:

elif isinstance(parameters, ParameterNode):

parameters is the root tax_benefit_system.parameters, which is always a ParameterNode, so the condition is always true. The intended check is almost certainly isinstance(parameter, ParameterNode) on the current descendant.

Impact

None observed today: every descendant that reaches this branch is a ParameterNode anyway, so the output is the same. But any other descendant type would silently be described as a parameter node instead of being skipped.

Expected

Check parameter, not parameters.

Notes

Found while documenting the code for the ruff docstring rules; behaviour was left unchanged there.

Linguagem predominante
Python
Estrelas
18
Forks
33
Merge médio
1d 18h
PRs com merge (30d)
23

Preparar o ambiente

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 PolicyEngine/policyengine-api

Todas as issues de PolicyEngine/policyengine-api

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

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