Local projects are useful, but they are too forgiving.
If I own the repo, I can choose the architecture, the naming, the test strategy, and the tradeoffs. That is good for building. It is not always good for proving I can work inside someone else's system.
Merged upstream PRs are different.
You do not get to decide that the repo should use your preferred style. You do not get to rewrite the surrounding code because it would make your fix prettier. You have to understand the local pattern and make the smallest change that fits.
That constraint is the value.







