You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Follow-up from PR #136 (issue #108): two source files still exceed the project's 400-line guideline and require further extraction beyond what was completed in that PR.
Affected files
lading/commands/bump.py — still ~27 lines over the 400-line limit. Docstring trimming alone cannot close the gap; further logic extraction is required (in the spirit of the bump_manifests.py split already landed).
Rewriting the many monkeypatch.setattr(publish, …) test seams to target publish_pipeline instead, per the project's no-compat convention (no shim/back-compat layers).
This was judged unsuited to the review-fix pass on PR #136 and tracked here as the agreed follow-up.
Acceptance criteria
lading/commands/bump.py is at or below 400 lines through further logic extraction (not just docstring trimming).
lading/commands/publish.py is at or below 400 lines, with responsibilities distributed to publish_pipeline.py and/or other new modules as appropriate.
All monkeypatch.setattr(publish, …) test seams are updated to target the correct module post-extraction, with no compatibility shims left behind.
docs/developers-guide.md extraction map is updated to reflect the new module boundaries.
Summary
Follow-up from PR #136 (issue #108): two source files still exceed the project's 400-line guideline and require further extraction beyond what was completed in that PR.
Affected files
lading/commands/bump.py— still ~27 lines over the 400-line limit. Docstring trimming alone cannot close the gap; further logic extraction is required (in the spirit of thebump_manifests.pysplit already landed).lading/commands/publish.py— 741 lines, deliberately deferred from PR Bring oversized files under the 400-line guideline (#108) #136.Rationale for deferral
Extracting
publish.pyis a substantial, non-minimal task because it requires:lading/commands/publish_pipeline.py).monkeypatch.setattr(publish, …)test seams to targetpublish_pipelineinstead, per the project's no-compat convention (no shim/back-compat layers).This was judged unsuited to the review-fix pass on PR #136 and tracked here as the agreed follow-up.
Acceptance criteria
lading/commands/bump.pyis at or below 400 lines through further logic extraction (not just docstring trimming).lading/commands/publish.pyis at or below 400 lines, with responsibilities distributed topublish_pipeline.pyand/or other new modules as appropriate.monkeypatch.setattr(publish, …)test seams are updated to target the correct module post-extraction, with no compatibility shims left behind.docs/developers-guide.mdextraction map is updated to reflect the new module boundaries.make lint,make typecheck, andmake testpass.References