My skill uses account linking as a completely optional feature. The skill allows users to use every one of our features without an account, but if they choose to link accounts, they will get personalized recommendations, rather than non-personalized. Since my skill doesn't have any invocations that require an account, but they all become personalized if they do have an account, I don't actually send a link card to the users at any point, I leave it up to them to choose to link from the skill page.
When I submitted for certification I got the reply:
The skill must deliver a link account card to the Home section when launched for users who have not yet linked an account. Please refer to test case 3.4 in the Functional Testing section of the Submission Checklist for more information. Please note that the skill must deliver link card in the home section. Also note that without linking the account we are able to check the functionality of the skill.
I don't understand why they think they can't check the functionality, I stated in the testing instructions that:
This skill will give movie information and give either average movie ratings if the user is not signed in or predicted movie ratings if the user is signed in. You can also try a movie recommendation dialogue by saying tell movie lens to find me a movie. This will prompt you for a tag or genre, and after that it will prompt for one more tag and then give some top recommended movies meeting that criteria.
So I'm not sure why I failed over this. I also failed over an endpoint validation issue, where they say that I am rejecting valid requests. I use the provided amazon java library to validate requests, so I'm not sure why its an issue. Looking at my log files, only one request failed, but it seems as though it should fail, because when I try passing the json to my skill, the generated signature is different from the one I received during certification, making me think that was a test that should have failed.