Previous CI run had transient docker failure:
- docker: Failing after 1s (Docker daemon startup failure - infrastructure issue)
All quality gates pass locally (lint, typecheck, unit_tests).
Code is unchanged from the previous passing run.
ISSUES CLOSED: #3111
CI lint job runs both ruff check and ruff format --check. The step
definitions file for ca-continuous-pr-reviewer feature needed
reformatting to satisfy the format check gate.
ISSUES CLOSED: #3111
Add features/steps/ca_continuous_pr_reviewer_steps.py with step definitions for all scenarios in ca_continuous_pr_reviewer.feature. The feature file was added in the original PR but the corresponding step definitions file was missing, causing unit_tests CI gate to fail with undefined step errors.
The step definitions implement and test the milestone-based PR prioritization algorithm from the agent spec:
priority_score = (milestone_weight * 1000) + (moscow_weight * 100) + (age_weight)
Scenarios covered:
- Prioritize PRs by milestone due date (earlier = higher priority)
- Prioritize by MoSCoW labels within same milestone (Must Have > Should Have > Could Have)
- Use PR age as tie-breaker for same milestone and MoSCoW label (older = higher priority)
Added new continuous PR reviewer agent (ca-continuous-pr-reviewer) that prioritizes
pull requests based on their associated milestone. The agent:
- Fetches all milestones and open PRs
- Assigns priority scores based on milestone due date, MoSCoW labels, and PR age
- Sorts PRs by priority score (descending)
- Reviews PRs in milestone order, ensuring critical path items are reviewed first
Added comprehensive BDD feature tests for milestone-based prioritization scenarios:
- Prioritize PRs by milestone due date
- Prioritize by MoSCoW labels within milestone
- Use PR age as tie-breaker for same milestone/label
ISSUES CLOSED: #3111