I just updated my project from the prehistoric SDK 1.4.0 to 1.12.3.
Took me a few hours to figure out that everything's broken because all the playdate->lua->getArg*/pushObject functions don't work inside coroutines any more.
Going back to SDK 1.10.0 and the problem is still there so I guess this broke between 1.4.0 and 1.10.0. I didn't keep copies of and can't find any pre 1.10 SDKs to check those.
My entire project is structured around coroutines and C so hopefully there's a workaround or fix for this. In the meantime, I'm back on 1.4.0.
Found it. I broke the previous fix when I updated Lua to 5.4.3 in SDK 1.8, about a year ago. I have our local changes to the Lua runtime flagged with comments in the source and merge them in by hand because I don't trust git to do it right. But now I don't trust myself either so I'll try git again next time.
MR is in for 1.13, lmk if you need a beta build before that's out.