My DNS server is porkpun.com and am using the latest version of the above mentioned NPM package
I disabled the partition of the code that removes the TXT records in order to get assistance with this issue.
The challengeCreateFn function checks the google DNS API for the record and waits an additional 10 minutes to return.
The domain in question is *.testdns.holycore.quest . It seems to add the records as requested but seems to fail when LE checks the validation with the error
No TXT records found for name: _acme-challenge.testdns.holycore.quest
I agree the TXT records are there now. And, I believe you when you say a google query found them. But, Let's Encrypt will check from multiple points around the world. For that to work the porkbun DNS servers must sync the data between themselves.
Usually this only takes a few seconds or minutes. But, some DNS systems take much longer.
Can you show the output of the failing command? Perhaps from the log. The full and exact message is helpful
Well, thank you! After reviewing the log I have the found the issue. The local ACME client attempts to verify the DNS records before sending the verification request to the LE server. Since I am doing my development and testing on a Vagrant provisioned VM, something along the line nerfs the DNS resolver and that local step to verify failed could not happen. I had no clue that the local client would attempt to verify before asking the remote LE server to do so.
The resolution to this issue: Make sure your local system can verify the records.