Thanks. Wasn't aware that every single node receiving a new block also checks the transactions in the new block.
Bitcoin protocol being trustless means that the bitcoin code trusts no-one, so it checks everything before accepting it.
Most of the bitcoin kernel code is made up of a of checks that protect relatively few additions and subtractions.
This is completely different from centralized apps, where your bank app trusts the bank servers, your store app trusts the store servers, etc. and so perform only very minimal checks (only at the network connection level).