Signals that may justify a rewrite
The important signs are not aesthetic complaints about the code. They are repeated situations where architecture or data structure makes safe operation and change unreasonably hard.
- critical workflows cannot be stabilised through targeted improvement
- architecture is consistently blocking change
- release risk remains unacceptably high
- incremental fixes cost more than establishing a new base with the same knowledge