I wanted to reply this as I received a second rejection for this issue (after applying the specified above fix). This failure has a very specific set of conditions that are not solved by calling [super pressesEnded ....] in your view controllers override of pressesEnded.
The condition:
App not installed on Apple TV.
Install App.
Start App.
Press Menu Button on remote.
*Note: Do not interact in any way with your app
*Note: pressesBegan and pressesEnded both overrode in view controler
*Note: SpriteKit Game with single view controller and multiple scenes
If you do anything else before that Menu Button press then the app would exit properly with the [super pressesEnded ...] added in the override function in the view controller. To fix this one specific situation you also have to call [super pressesBegan ....] in your override function in the view controller. For some reason I cannot identify the app state is such after startup and before any user action that exit to main menu is processed in the pressesBegan function inside the super and not the pressesEnded function as it is the rest of the time.
Update: I could also trigger this problem if I exited the app in the multi-tasking display (double tap home -> select app -> swipe up) and then started the app. what I find odd is that starting a new debug session from XCode is NOT the same as exiting the app or deleting the app. This has made this rejection hard to trouble shoot.
For those asking why I override both pressesBegin and pressesEnd is because the app is a game and there is a delay between pressesBegan and pressesEnded that was noticable in reaction speed of button presses. I had to override pressesEnded and call the super or scene switcher to allow for proper scene switching and exiting with SpriteKit.
TLDR: If you override pressesBegan and/or pressesEnded you should call the proper super function for all presses that you do not handle and when at the main menu of your game you must call them for the menu button so that app exits properly.