Will be a long post.
phone - iPhone 3, non retina and also small screen size android
phonehd - iPhone 4, 5, 6, iPod Touch 5G, 6G, 6C etc.
tablet - iPad 1, 2, mini all non Retina, also same type android devices, however it's a weird option because all resources from phonehd can be used here and will fit perfectly.
tablethd - iPad Retina 3, 4, Mini Retina, Air 1,2 etc.
So, we need only phonehd and tablethd for all devices.
I've talked about this already in a past. But will repost again with new comments.
So, in general we have two families of devices and before iPhone 6 and 6+ we have this options for resources(lest call this old time scheme):
resource prefix: -hd,
devices: iPhone 4, iPhone 4, iPod Touch 5G, iPad 2, iPad Mini 1(any non Retina iPads)
resource prefix: -ipadhd
devices: iPad 3, iPad 4, iPad Air, iPad Air 2, iPad 2 Mini, iPad 3 Mini, iPad 4 Mini.
Now we have iPhone 6 and 6+, so how should we use resources for them?
Let's see how Apple does it. As example I'm showing Monument Valley game that are not optimized for 6'th, that means that developer has not provided a launch image and so as result iOS will scale everything to fit device screen.
As you can see the game looks the same on all devices.
By the way, I did the same thing for my game(but I've provided correct launch images 1334x750px and 2208x1242px):
On image bellow I've quickly resized screen shoots from iPhone 5, 6 and 6+, but if you wan to check here is original screen shoots for each device:
iPhone 5: http://i.piccy.info/i9/fc684833bbc6c3635ab696e1fa8f38a3/1458082520/211530/1009661/level_96iPhone5.jpg
iPhone 6: http://i.piccy.info/i9/f6a76d80cd0bd71374c3f012a678102d/1458082559/295111/1009661/level_96iPhone6.jpg
iPhone 6 Plus: http://i.piccy.info/i9/342444f4bd36e1502e836804fc85f226/1458082573/212946/1009661/level_96_iPhone6Plus.jpg
At the same time I used only the old time scheme of resources: hd and ipadhd.
In the SpriteBuilder it's phonehd and tablethd accordingly.
For this I modified cocos2d a bit, so it uses them for 6 and 6+ but scales Director. Here is how to modify it by the way - http://forum.cocos2d-objc.org/t/iphone-6s-and-6s-plus/17987/9?u=kamikaze
As result, iPhone 6 Plus uses tablethd and iPhone 6 uses phonehd but with changed contentScaleFactor.
Here is how my game will look like without this modifications to cocos2d on iPhone 6:
As you see, it has just more canvas size compare to iPhone 5(on other scenes background images too small to fit the screen, I'm using 2272x1536 if you know this size of background fits all devices), but using same phonehd resources, however without proper scale.
Also, if pixel perfect game is mandatory, we need to have a new prefix: iphone6 with scale ~0.6, but I don't want to increase ipa file size.
if with IA I will able to use for example: phonehd on iPhone 5/6 and tablethd on iPar Air/iPhone 6 Plus, so it's ok. However, App Thinning support available only from iOS 9, so you ipa file for lower versions will be huge if you want to prodive 1x, 2x and 3x for all devices:
This will solve all the problems once and for all. I've also already tried it a long time ago: http://forum.spritebuilder.com/t/cocos2d-v4-pre-alpha/17538