Python docstring style checker for PEP 257 compliance
72
{
"context": "Evaluates how the solution leverages pydocstyle to enforce argument documentation coverage (D417) across Google, NumPy, and Sphinx docstring conventions. Checks focus on using the linter's selectors, error objects, and exit codes to drive the report.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Convention routing",
"description": "Uses pydocstyle's convention handling (e.g., passing google/numpy/sphinx via the convention or select arguments of pydocstyle.check) to align checks with the requested docstring style rather than hard-coding parsing.",
"max_score": 25
},
{
"name": "D417 enforcement",
"description": "Ensures the D417 rule is active (via select/add-select or conventions that include D417) so missing parameter docs are detected for each style, instead of reimplementing coverage logic manually.",
"max_score": 30
},
{
"name": "Error extraction",
"description": "Consumes the Error objects returned by pydocstyle.check/ConventionChecker.check_source to gather code, line numbers, and messages for undocumented parameters rather than inferring positions separately.",
"max_score": 20
},
{
"name": "Self/cls handling",
"description": "Relies on pydocstyle's D417 behavior that ignores self/cls parameters (or equivalent configuration) instead of treating them as undocumented, matching the tool's defaults.",
"max_score": 15
},
{
"name": "Exit codes",
"description": "Maps the CLI return value to pydocstyle's return code semantics (NO_VIOLATIONS_RETURN_CODE/VIOLATIONS_RETURN_CODE or equivalent) so non-zero exit reflects undocumented parameters detected by the linter.",
"max_score": 10
}
]
}Install with Tessl CLI
npx tessl i tessl/pypi-pep257evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10