Skip to content

Parametriza detectores R1/R2/R4 por threshold (fonte única p/ calibração) - #37

Merged
Gronoxx merged 1 commit into
mainfrom
feat/detectores-parametrizados
Jun 20, 2026
Merged

Gronoxx merged 1 commit into
mainfrom
feat/detectores-parametrizados

Conversation

@Gronoxx

@Gronoxx Gronoxx commented Jun 20, 2026

Copy link
Copy Markdown
Owner

Habilita passar `params` de threshold aos detectores long_method, long_param_list e deep_nesting, mantendo `detect(fn)` 100% retrocompatível (defaults idênticos — 243 testes passam sem alteração).

Por quê: o estudo de calibração de limiares em `tp-es2-dataset` (PR #2) mantinha uma cópia divergente dos detectores só para tê-los parametrizados. Com isto, aquele estudo passa a importar estes canônicos (fonte única, sem risco de drift).

Mudanças:

  • `long_method`: liga o 3º limiar (`stmt_threshold`) via contagem de statements no AST (proxy do Pylint R0915). Default `None` (desativado) → o detector default segue idêntico; o grid de calibração passa valores explícitos para ativá-lo.
  • `long_param_list` / `deep_nesting`: `detect(fn, params=None)` com `DEFAULT_PARAMS`.
  • `init`: exporta `DETECTOR_DEFAULT_PARAMS` (R1/R2/R4).

Pareado com Gronoxx/tp-es2-dataset PR #2.

🤖 Generated with Claude Code

…calibração)

Permite passar `params` aos detectores long_method, long_param_list e
deep_nesting, mantendo `detect(fn)` 100% retrocompatível (defaults idênticos).
Elimina a necessidade de uma cópia divergente dos detectores no estudo de
calibração (tp-es2-dataset), que agora importa estes canônicos.

- long_method: liga o 3o limiar (stmt_threshold) via contagem de statements
  no AST (proxy do Pylint R0915). Default = None (desativado), então o
  detector default segue idêntico; o grid de calibração passa valores
  explícitos para ativá-lo.
- __init__: exporta DETECTOR_DEFAULT_PARAMS (R1/R2/R4).
- 243 testes passam sem alteração.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@Gronoxx
Gronoxx merged commit a3a17de into main Jun 20, 2026
6 checks passed
@Gronoxx
Gronoxx deleted the feat/detectores-parametrizados branch June 20, 2026 21:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant