What does MacBookProX,Y refer to? The MacBook Pros have long used a codename MacBookProX,Y.

Apparently the X refers roughly to a generation. One generation can possibly span more than one "early", "middle", "late" period of one year, or indeed may span more than one year.

The Y seems to distinguish screen size. It used to be that the Y increased with screen size. Nowadays that pattern no longer holds.

Some examples: 


MacBookPro15,1



MacBook Pro "Core i7" 2.2 15" Touch/2018
...
MacBook Pro "Core i9" 2.4 15" Touch/2019




MacBookPro15,2



MacBook Pro "Core i5" 2.3 13" Touch/2018
...
MacBook Pro "Core i7" 2.8 13" Touch/2019




MacBookPro15,3



MacBook Pro "Core i7" 2.6 15" Touch/2018 Vega
...
MacBook Pro "Core i9" 2.4 15" Touch/2019 Vega




MacBookPro15,4



MacBook Pro "Core i5" 1.4 13" Touch/2019 2 TB
MacBook Pro "Core i7" 1.7 13" Touch/2019 2 TB



What does the MacBookProX,Y codename mean? In particular, and now that the logic board is entirely monolithic, but at least still replaceable, not glued, does the codename mean that one "chassis" (keyboard + screen) fits precisely boards of the same codename?

Related reference(s):


https://en.wikipedia.org/wiki/List_of_Apple_codenames#MacBook_Pro
I would say there’s no consistency on when Apple revs major or minor and they often speed bump parts within the same X,Y family and have service bulletins to ensure compatible parts only get on compatible flavors of these.

You can count on larger numbers being released later and these are far easier to sort or compare in code, though, if you have to check you aren’t running on very old gear rather than check for specific functions / API to be available.

From my experience, these are monotonically increasing marketing numbers that let you guess the major CPU generation and sales period in a similar manner to the Marketing (Early / Mid / Late 2019) monikers that appear in all the Apple Documentation / technical specifications, etc..


Can a Mac&#39;s model year be determined with a Terminal Command?