The root cause of that erratic behaviour may well be a faulty SD card (assuming you are exporting correctly your PSBT file, which I believe you are). I have searched for that error message in COINKITE code repository[1] and I was able to found this section:
async def ready2sign(*a):
# Top menu choice of top menu! Signing!
# - check if any signable in SD card, if so do it
# - if no card, check virtual disk for PSBT
# - if still nothing, then talk about USB connection
import stash
from pincodes import pa
from glob import NFC
# just check if we have candidates, no UI
choices = await file_picker(None, suffix='psbt', min_size=50,
max_size=MAX_TXN_LEN, taster=is_psbt)
if pa.tmp_value:
title = '[%s]' % xfp2str(settings.get('xfp'))
else:
title = None
if not choices:
msg = '''Coldcard is ready to sign spending transactions!
Put the proposed transaction onto MicroSD card \
in PSBT format (Partially Signed Bitcoin Transaction) \
or upload a transaction to be signed \
from your desktop wallet software or command line tools.\n\n'''
if NFC:
msg += 'Press (3) to send PSBT using NFC.\n\n'
msg += "You will always be prompted to confirm the details before \
any signature is performed."
ch = await ux_show_story(msg, title=title, escape='3')
if ch == '3' and NFC:
await NFC.start_psbt_rx()
return
if len(choices) == 1:
# skip the menu
label,path,fn = choices[0]
input_psbt = path + '/' + fn
else:
input_psbt = await file_picker('Choose PSBT file to be signed.',
choices=choices, title=title,
batch_sign=True, escape="9")
if not input_psbt:
return
# start the process
from auth import sign_psbt_file
await sign_psbt_file(input_psbt)
If seems that the code is made that if the code doesn't find any suitable files, it just presents you that message. Might be a silly question but if you have write protection in your card it can prevent the hardware wallet into making changes to the file, perhaps generating that error as well?
You could try to buy another SD card to see if the random problem persists. Even if you got the card from COINKITE, it doesn't mean that they are protected from faulty SD cards every now and then.
If you are thinking in buying another SD card, do consider grabbing one that is SLC (like Western Digital IX QD334 for example).
[1]
https://github.com/Coldcard/firmware/blob/edge/shared/actions.py