This document is intended to define behaviours that are not enforced by toxcore, but are otherwise required/recommended to ensure proper client interoperability as well as best security practices.
For a Tox client to be endorsed/supported by the Tox Project, it must, at minimum, comply with every point in this document (except where otherwise stated). For this reason, things that are should not be needlessly specific.
Sometimes, it is not immediately obvious why certain points exist in this document. For this purpose, there is a Rationale section, where explanations will be given.