-
Notifications
You must be signed in to change notification settings - Fork 29
Open
Labels
Description
Description
The project's pyproject.toml currently suppresses docstring requirements:
- ruff: D100-D107 (missing docstrings) are in the ignore list, tagged "should eventually be enabled"
- pylint:
missing-class-docstring,missing-function-docstring,missing-module-docstringare disabled
As a result, many key public methods lack docstrings:
HConfigBase.config_to_get_to()HConfigBase._future()(only has a note about known gaps, no usage docs)HConfigBase.unified_diff()HConfigChild.negate()HConfigChild.is_match()(has a docstring but no Args/Returns)HConfigChild.overwrite_with()HConfigChildclass itselfHConfigChildrenclass- Most platform driver classes
Proposed Improvement
- Incrementally enable D101 (public class), D102 (public method), D103 (public function) in ruff
- Add docstrings to the highest-impact public methods first (the ones listed above)
- Use a consistent format (Google style or NumPy style) with Args/Returns sections for complex signatures
- Re-enable the corresponding pylint checks
The project already has excellent docstrings on WorkflowRemediation, RemediationReporter, and utility functions — extending that standard to the rest of the public API would significantly improve developer experience.
Reactions are currently unavailable