Skip to content

Continue splitting base_projects engine into focused modules #1198

Description

@codeforester

Problem

Validated from Claude third-pass finding [84].

cli/python/base_projects/engine.py is still 1,076 lines and still carries # pylint: disable=too-many-lines near the top, even after the command_helpers.py extraction. The file remains a broad dispatcher plus workspace status/check/doctor/clone/pull/init/configure implementation surface.

This is low-risk technical debt, but the suppression makes it easy for new workspace behavior to keep accumulating in one module.

Desired outcome

Remove the need for the too-many-lines suppression by continuing the existing module split along established workspace command boundaries.

Scope

  • Identify the next cohesive extraction from base_projects.engine.
  • Prefer existing boundaries such as workspace init, clone, pull, reports, or command parsing.
  • Avoid behavior changes unless covered by focused tests.
  • Remove or reduce the too-many-lines suppression when the split is complete.

Acceptance criteria

  • base_projects.engine is smaller and no longer needs a broad too-many-lines suppression, or the remaining suppression is justified by a narrower follow-up issue.
  • Existing base_projects tests continue to pass.
  • Extracted helpers follow the patterns already used by command_helpers.py and existing workspace modules.

Classification

Review finding taxonomy: refactoring/code organization.

Metadata

Metadata

Assignees

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions