This guide captures the delivery pattern used in the last two weeks to ship large changes with low production incidents.
Ship fast without breaking production by standardizing:
- Small, focused changes
- Strong CI gates
- Fast production verification
- Fast rollback path
- One iteration, one PR, one clear objective.
- Atomic commits only (easy to review, revert, and audit).
- Preserve existing look and feel unless explicitly requested.
- Minimize risk on existing APIs/services.
- Validate in production after each merge before starting the next iteration.
- Create branch with explicit scope.
- Implement only the agreed change for that iteration.
- Add/update tests for the changed behavior.
- Run local validation.
- Open PR with clear summary and validation evidence.
- Merge with CI green (auto-merge allowed only with required checks).
- Monitor GitHub Actions
Production Release. - Validate production endpoints and critical UI paths.
- Move to next iteration only if validation is successful.
Before merge:
PR Validationworkflow is green.- Changed pages render correctly in local test/smoke.
- No unrelated file changes in PR.
After deploy:
Production Releaseworkflow is green.- Main routes return HTTP 200:
//comunidad/eventos/proyectos
- Changed route behavior is manually verified.
- Browser console has no new critical errors on changed pages.
- Keep PR size small; split big initiatives into incremental PRs.
- Never bundle refactor + feature + styling + infra in one PR.
- For high-risk changes, add a temporary feature flag or fallback path.
- Avoid expensive runtime calls per request; prefer cache + scheduled refresh.
- Keep persistence changes backward compatible when possible.
If production validation fails:
- Stop new feature iterations.
- Revert the last PR or deploy previous stable release tag.
- Confirm health checks and critical routes.
- Open a fix PR with explicit root cause and prevention note.
Use this structure in every PR:
- Summary
- Why
- Scope (what is included / excluded)
- Validation (tests and manual checks)
- Production verification plan
- Rollback plan
- PR validation success rate
- Production release success rate
- Mean time from merge to production validation
- Number of rollbacks/reverts
- Open production bugs older than 7 days
Targets should be defined and adjusted by the team based on current stability goals.