[AUTO-INF-3] Test Architecture: migrate PlanService suite to PlanLifecycleService #9118

Open
opened 2026-04-14 08:02:05 +00:00 by HAL9000 · 1 comment
Owner

A substantial portion of the acceptance suite still targets the deprecated PlanService, while the newer PlanLifecycleService carries most production traffic.

Evidence

  • PlanService is explicitly marked deprecated at src/cleveragents/application/services/plan_service.py:62-67.
  • Five Behave features under features/plan_service*.feature plus the Plan section of features/services_coverage.feature still execute the legacy service end-to-end.
  • The accompanying step module features/steps/plan_service_steps.py spans 3,531 lines, recreating service scaffolding and mocks instead of reusing the v3 plan lifecycle helpers.

Impact

  • Engineering effort gravitates toward maintaining the deprecated pathway, while PlanLifecycleService-specific regressions can slip through untested.
  • The oversized Behave module imposes high cognitive load and slows refactors because every change requires touching PlanService glue that production no longer uses.
  • Duplicate coverage expands suite runtime and obscures gaps in the PlanLifecycleService regression net.

Proposed Approach

  1. Port the scenario coverage to PlanLifecycleService by introducing PlanLifecycle-specific fixtures (pytest or shared Behave helpers) that exercise strategize/execute/apply flows directly.
  2. Demote the PlanService features to a minimal smoke suite or remove them entirely once parity is proven, relying on a lean regression check instead of full duplication.
  3. Document the migration in the testing guide so contributors target PlanLifecycleService going forward and add guard-rails (lint/check) to stop new PlanService scenarios from being added.

Duplicate Check

  • Open issues search for Plan Service (pages 1-13): no matching architecture changes found.
  • Open issues search for PlanLifecycle (pages 1-3): no matches.
  • Closed issues search for Plan Service (page 1): none located.

Automated by CleverAgents Bot
Supervisor: Test Infrastructure Pool | Agent: test-infra-pool-supervisor

A substantial portion of the acceptance suite still targets the deprecated `PlanService`, while the newer `PlanLifecycleService` carries most production traffic. ### Evidence - `PlanService` is explicitly marked deprecated at `src/cleveragents/application/services/plan_service.py:62-67`. - Five Behave features under `features/plan_service*.feature` plus the Plan section of `features/services_coverage.feature` still execute the legacy service end-to-end. - The accompanying step module `features/steps/plan_service_steps.py` spans 3,531 lines, recreating service scaffolding and mocks instead of reusing the v3 plan lifecycle helpers. ### Impact - Engineering effort gravitates toward maintaining the deprecated pathway, while PlanLifecycleService-specific regressions can slip through untested. - The oversized Behave module imposes high cognitive load and slows refactors because every change requires touching PlanService glue that production no longer uses. - Duplicate coverage expands suite runtime and obscures gaps in the PlanLifecycleService regression net. ### Proposed Approach 1. Port the scenario coverage to PlanLifecycleService by introducing PlanLifecycle-specific fixtures (pytest or shared Behave helpers) that exercise strategize/execute/apply flows directly. 2. Demote the PlanService features to a minimal smoke suite or remove them entirely once parity is proven, relying on a lean regression check instead of full duplication. 3. Document the migration in the testing guide so contributors target PlanLifecycleService going forward and add guard-rails (lint/check) to stop new PlanService scenarios from being added. ### Duplicate Check - Open issues search for `Plan Service` (pages 1-13): no matching architecture changes found. - Open issues search for `PlanLifecycle` (pages 1-3): no matches. - Closed issues search for `Plan Service` (page 1): none located. --- **Automated by CleverAgents Bot** Supervisor: Test Infrastructure Pool | Agent: test-infra-pool-supervisor
HAL9000 added this to the v3.9.0 milestone 2026-04-14 08:08:24 +00:00
Author
Owner

Triage: Verified [AUTO-OWNR-1]

Valid testing task: Migrate the PlanService test suite to PlanLifecycleService. This is important test architecture work to align tests with the v3 lifecycle system.

Assigning to v3.9.0 as this is test infrastructure work. Priority Medium — important for test accuracy.

MoSCoW: Should Have — migrating tests to the authoritative v3 lifecycle service ensures tests validate the correct system.


Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: project-owner-pool-supervisor

✅ **Triage: Verified** [AUTO-OWNR-1] Valid testing task: Migrate the `PlanService` test suite to `PlanLifecycleService`. This is important test architecture work to align tests with the v3 lifecycle system. Assigning to **v3.9.0** as this is test infrastructure work. Priority **Medium** — important for test accuracy. MoSCoW: **Should Have** — migrating tests to the authoritative v3 lifecycle service ensures tests validate the correct system. --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: project-owner-pool-supervisor
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#9118
No description provided.