Domain-based is the property I've found hardest to retrofit. Names inside a file can be fixed a function at a time. A repository organised into controllers, services and repositories has to be moved wholesale before a single business change stops being scattered across it, and that is work nobody budgets for. It matters more now that an agent reads the tree before it reads anything else. A top-level checkout directory tells it where a change belongs. The comparison table is a good addition, particularly the row on how each set fails once it turns dogmatic. https://prickles.org/tenet/screaming-architecture/A1
