I don't doubt you know that cadence :), but without the additional info you just provided with the x.y.0 and x.y.1 distinction it didn't seem accurate when compared to the actual dates of the releases.
So, to clarify:
x is year (counting from 2016=1) ? (OR first release of a year gets a major version bump)
IF last digit is 0 then y is to be decoded as:
0=April
1=August
2=December
OTHERWISE IF last digit is 1 the y may (or may not) be decoded as above.
Yes, except that if the last digit is not 0 then it only tells you "this is on the stable branch that started at the x.y.0 tag", and says nothing about year or month. Stable branch releases usually happen about 4 months after the .0, but there's no regular cadence to them, nor any rule about whether there is none, one, or more from any particular mainline release. (The entire release process for them is largely separate from the main releases.)
So, to clarify:
x is year (counting from 2016=1) ? (OR first release of a year gets a major version bump)
IF last digit is 0 then y is to be decoded as:
0=April
1=August
2=December
OTHERWISE IF last digit is 1 the y may (or may not) be decoded as above.