The constraint
The work is real. The application layer is missing.
The product has accumulated customer-facing pages, internal tools, integrations, and production habits over years. Small changes are expensive because the architecture is hard to reason about. A useful modernization plan starts by naming the valuable workflows, data ownership, release path, and the first seam worth replacing—not by choosing a new framework in the abstract.