Current Status
State: Waiting. Audit flagged service.py, dokploy.py, and rendering/CLI helpers as high-blast-radius modules. This is broad cleanup and should proceed in small behavior-preserving slices after higher-risk safety work.
Next action: Pick one low-risk extraction first, likely shared runtime-environment classification or CLI JSON/service POST helpers, and prove no behavior change with tests.
Blocked by: No native issue blocker.
Waiting for: The immediate safety issues to clear.
Acceptance Criteria
- Runtime environment classification has one tested source of truth.
- CLI modules share common JSON/service request helpers instead of repeated serialization and error handling.
service.py routing/envelopes/driver dispatch are split into cohesive modules without behavior change.
dokploy.py is split into HTTP client, target resolution, orchestration, and product-specific rendering pieces as provider adapter work allows.
- Refactors are covered by focused tests and do not mix behavior changes with mechanical moves.
Target Areas
control_plane/service.py
control_plane/dokploy.py
control_plane/launchplane_rendering.py
control_plane/live_target_runtime.py
control_plane/product_config.py
- CLI modules and authz grant helpers
Finish Line
Large mixed-responsibility modules are split into cohesive boundaries, and duplicated classification/HTTP/authz helper logic has one tested source of truth.
Current Status
State: Waiting. Audit flagged
service.py,dokploy.py, and rendering/CLI helpers as high-blast-radius modules. This is broad cleanup and should proceed in small behavior-preserving slices after higher-risk safety work.Next action: Pick one low-risk extraction first, likely shared runtime-environment classification or CLI JSON/service POST helpers, and prove no behavior change with tests.
Blocked by: No native issue blocker.
Waiting for: The immediate safety issues to clear.
Acceptance Criteria
service.pyrouting/envelopes/driver dispatch are split into cohesive modules without behavior change.dokploy.pyis split into HTTP client, target resolution, orchestration, and product-specific rendering pieces as provider adapter work allows.Target Areas
control_plane/service.pycontrol_plane/dokploy.pycontrol_plane/launchplane_rendering.pycontrol_plane/live_target_runtime.pycontrol_plane/product_config.pyFinish Line
Large mixed-responsibility modules are split into cohesive boundaries, and duplicated classification/HTTP/authz helper logic has one tested source of truth.