To further elaborate my thoughts:
The functions of a full node are to provide both monitoring and validation.
Monitoring the state of the network should be the first function of a node. In order to do this a node should a able to keep track of transactions and blocks that may follow differing consensus rules, and detect competing blockchain forks. In the case of block size, the software should keep track of any block regardless of size, subject to its technical ability.
Current software, both XT and Core, do not provide the greatest monitoring, since they only keep track of the longest blockchain that follows the one set of consensus rules they implement.
Validating transactions comes after monitoring, when the node operator can choose which transactions to accept, which to relay, and which proof of work blockchain is considered valid. Trying to stay in sync with network consensus will be of primary importance here.