This was a race-condition between WebKit telling the app that the page loaded and Vue from being properly initialized and capturing the post message. This could lead to the app sending the post message before the client app was ready to listen, ignoring the post message. App.vue would then load the last value out of its cache.
I fixed this by injection a script at the beginning of the HTML which contains:
window.sharedCardName = '{the shared text or URL}'
and use this value in Add.vue to populate the textfield.
This is already deployed to production and a TestFlight build containing this fix should be ready soon.