ADR-033: Stratified CI Execution¶
- Status: Accepted
- Date: 2026-01-11
- Authors: Podcast Scraper Team
- Related RFCs: RFC-039
Context & Problem Statement¶
Running the full suite of integration and E2E tests (~10+ minutes) on every single commit push is wasteful and slows down the development cycle. However, skipping them entirely until merge is risky.
Decision¶
We implement Stratified CI Execution:
- Push Trigger (Fast Checks): On every push to a feature branch, run only unit tests, linting, and formatting (~2 minutes).
- Pull Request Trigger (Full Validation): When a PR is opened or updated, run the entire suite (Integration, E2E, Coverage, Docs) (~10 minutes).
Rationale¶
- Velocity: Developers get near-instant feedback on basic regressions.
- Resource Efficiency: Saves GitHub Actions minutes by not running heavy ML-simulated tests on small iterative commits.
- Safety: The "merge gate" (PR) still ensures 100% validation before code hits
main.
Alternatives Considered¶
- Full Suite on Every Push: Rejected as it bottlenecks the "Commit-Push-Verify" loop.
- Manual CI: Rejected as it relies on human memory and is error-prone.
Consequences¶
- Positive: Faster development iterations; lower CI costs.
- Negative: Integration errors may not be discovered until the PR stage.