There are, IMO at least, 3 types of "regression" that we should be
concerned about or that some people are concerned about:
1. New features:
Undoubtedly, new features will likely have bugs and
no by adding new features we could be adding bugs
which could be seen as a regression.
2. Simple fixes:
A simple fix causes a regression.
3. Wholesale refactoring:
IMO, this is the one which is the most problematic for
us lately. We have seen several cases where a simple
bug or a desire to "make this part of the code better"
has resulted in huge amounts of code churn, major rewrites
and major refactoring.
My PoV is that:
o We need to continue to add new features. We must provide better
QA and testing.
o We need to avoid our natural inclinations to look at "fixing
bugs" as an opportunity for major refactors. If people want
to major refactor, fine. But that stays in trunk. What is
important is that we patch the bug 1st. Premature re-factoring
is as bad as premature optimization.