litellm/basedpyright-code-budget.json
mateo-berri 3307a9ab93 chore(typing): auto-tighten the basedpyright budget nightly
Add a --tighten mode to scripts/type_check_gate.py that lowers each
rule's limit in basedpyright-code-budget.json to its current head count
plus 50 slack. Limits never rise, absent rules are not adopted, and the
vacuous-run guard refuses to tighten when basedpyright emitted nothing.
A scheduled workflow runs it nightly against litellm_internal_staging
and opens a PR only when there is headroom to remove.

Includes the first tighten: 63,290 errors of stale headroom removed
across 23 of 48 rules; the reportAny limit falls 34,906 -> 24,479 and
reportExplicitAny 10,230 -> 7,334, so growth under the old ceilings can
no longer hide. The delta-vs-base gate still spares any PR that does
not push a rule past both its limit and its merge-base count
2026-07-28 11:54:00 -07:00

146 lines
2.4 KiB
JSON

{
"reportAny": {
"limit": 24479
},
"reportArgumentType": {
"limit": 2233
},
"reportAssignmentType": {
"limit": 280
},
"reportAttributeAccessIssue": {
"limit": 422
},
"reportCallIssue": {
"limit": 123
},
"reportConstantRedefinition": {
"limit": 59
},
"reportDeprecated": {
"limit": 271
},
"reportDuplicateImport": {
"limit": 42
},
"reportExplicitAny": {
"limit": 7334
},
"reportFunctionMemberAccess": {
"limit": 11
},
"reportGeneralTypeIssues": {
"limit": 205
},
"reportIncompatibleMethodOverride": {
"limit": 78
},
"reportIncompatibleVariableOverride": {
"limit": 12
},
"reportInconsistentOverload": {
"limit": 18
},
"reportIndexIssue": {
"limit": 37
},
"reportInvalidTypeForm": {
"limit": 35
},
"reportInvalidTypeVarUse": {
"limit": 5
},
"reportMatchNotExhaustive": {
"limit": 0
},
"reportMissingParameterType": {
"limit": 4021
},
"reportMissingTypeArgument": {
"limit": 11127
},
"reportMissingTypeStubs": {
"limit": 41
},
"reportOperatorIssue": {
"limit": 0
},
"reportOptionalCall": {
"limit": 0
},
"reportOptionalIterable": {
"limit": 0
},
"reportOptionalMemberAccess": {
"limit": 780
},
"reportOptionalOperand": {
"limit": 0
},
"reportOptionalSubscript": {
"limit": 0
},
"reportPossiblyUnboundVariable": {
"limit": 77
},
"reportPrivateUsage": {
"limit": 1870
},
"reportRedeclaration": {
"limit": 12
},
"reportReturnType": {
"limit": 203
},
"reportTypedDictNotRequiredAccess": {
"limit": 27
},
"reportUndefinedVariable": {
"limit": 0
},
"reportUnknownArgumentType": {
"limit": 34418
},
"reportUnknownLambdaType": {
"limit": 113
},
"reportUnknownMemberType": {
"limit": 28432
},
"reportUnknownParameterType": {
"limit": 13955
},
"reportUnknownVariableType": {
"limit": 22373
},
"reportUnnecessaryCast": {
"limit": 176
},
"reportUnnecessaryComparison": {
"limit": 760
},
"reportUnnecessaryContains": {
"limit": 7
},
"reportUnnecessaryIsInstance": {
"limit": 915
},
"reportUntypedBaseClass": {
"limit": 148
},
"reportUntypedFunctionDecorator": {
"limit": 33
},
"reportUnusedClass": {
"limit": 33
},
"reportUnusedFunction": {
"limit": 190
},
"reportUnusedImport": {
"limit": 640
},
"reportUnusedVariable": {
"limit": 198
}
}