Hi!
Consumers of data generally cannot tell whether the addition of a new field to a data encoding is a breaking change or not. Given this, code that consumes encoded data should at least produce warnings when it encounters encodings that it is not expecting and preferably should refuse to produce output in such circumstances. Producers of data thus should signal in advance any changes to the encoding, even if they know that the changes can be safely ignored.
I don't think this approach is always warranted. In some cases, yes, but in case where you importing data from external system using a generic data exchange format like JSON, I don't think this is warranted. This will only lead to software being more brittle without any additional benefit to the user. Formats like JSON allow to easily accommodate backwards-compatible incremental change, so there's no reason not to use it.
I would view software that consumes Wikidata information and silently ignores fields that it is not expecting as deficient and would counsel against using such software.
I think this approach is way too restrictive. Wikidata is a database that does not have fixed schema, and even its underlying data representations are not yet fixed, and probably won't be completely fixed for a long time. Having software break each time a field is added would lead to a software that breaks often and does not serve its users well. You need also to consider that Wikidata is a huge database with a very wide mission, and many users may not be interested in all the details of the data representation, but only in some aspects of it. Having the software refuse to operate on the data that is relevant to the user because some part that is not relevant to the user changed does not look like the best approach to me.
For Wikidata specifically I think better approach would be to ignore fields, types and other structures that are not known to the software, provided that ones that are known do not change their semantics with additions - and I understand that's the promise from Wikidata (at least excepting cases of specially announced BC-breaking changes). Maybe inform the user that some information is not understood and thus may be not available, but not refuse to function completely.