docs(repo): add PRP-33 batch-runner-mvp (#277)#279
Conversation
Adds the PRP for the batch-runner MVP, the unblocker for the four downstream batch INITIALs landed in #278 (parallel-execution, priority-queue, export-and-retry, champion-and-heatmap). Resolves three minor drift items vs INITIAL-batch-runner-mvp.md: locks sample_size derivation to Option (a) inside the batch slice (Option (b) rejected as a vertical-slice violation), adds a test_service_emits_lifecycle_events test asserting the five batch.* structlog event names + request_id correlation, and rounds out _expand_scope unit coverage to every BatchScope.kind (manual, region, category, top_revenue, all).
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Sorry @w7-mgfcode, you have reached your weekly rate limit of 500000 diff characters.
Please try again later or upgrade to continue using Sourcery
Summary
Lands the PRP doc for the Batch Runner MVP — the unblocker for the four downstream Full-Version INITIALs (parallel-execution, priority-queue, export-and-retry, champion-and-heatmap) merged via #278.
Doc-only PR. The implementation lands in a follow-up execution PR.
Refs #277.
Drift edits applied vs INITIAL-batch-runner-mvp.md
The PRP draft was reviewed against its source INITIAL (
PRPs/INITIAL/INITIAL-batch-runner-mvp.md) and found to be MINOR DRIFT. Three edits applied before landing:sample_sizederivation to Option (a) — computed inside the batch slice fromfold_metrics. Option (b) (extendingjobs/service.py:_shape_backtest_result) is now explicitly REJECTED in the Confidence-Score section because it would violate the vertical-slice no-cross-import rule and the off-limits boundary declared in § "What → Success Criteria".test_service_emits_lifecycle_eventsto the Test Plan unit suite — asserts the fivebatch.{created,item_started,item_completed,item_failed,completed}structlog event names emit in order and that every event payload carries arequest_idfield for log correlation._expand_scopeunit coverage — added explicit test entries forregion,category, andallBatchScope.kindvalues (PRP previously only enumeratedmanualandtop_revenue).Out of scope for this PR
app/features/batch/, no Alembic migration, no frontend code — those land in the implementation PR per PRP execution.app/features/jobs/,app/features/forecasting/, ortests/test_e2e_demo.py— the PRP declares these off-limits.Test plan
.claude/hooks/check-commit-format.sh(usesreposcope; already in allow-list).