Implemented a consistent baseline CI pipeline across all Rails apps including linting, security scans, system tests, and test suites to prevent regressions and improve deployment confidence.
I finally stopped pretending manual testing in production was a strategy and put a real baseline in place across all Rails apps. Nothing fancy. Just the basic stuff that should have been there from the start.
Every repo now runs a consistent CI pipeline on push. Linting, security scans, and actual tests all run automatically so I know immediately if something broke instead of finding out three days later when something weird happens in production.
The stack is intentionally simple. Lint checks keep the code readable. scan_js and scan_ruby catch obvious security issues. Then system tests and standard test suites make sure the app actually works end to end. No guesswork.
The goal here is not perfection. It is coverage. I want every repo to have a minimum safety net so I can move faster without constantly second guessing changes.
This is another real step toward treating all projects like actual production systems instead of side projects that just happen to be live. The difference is immediate. Less hesitation. Fewer surprises. Way more confidence pushing code.
Posted: March 23, 2026