I agree with the logging and retry point, but for a download-upload-post workflow I would split it into three separate stages with a checkpoint after each one. Download, upload, and post should not run as one long job, because if the post fails you should not have to download and upload again.
Before posting, the tool should check whether that uploaded file ID has already been posted. If it has, it should skip the post instead of publishing it twice. I would also keep a simple record of the original link, the downloaded file, the uploaded file ID, and the post ID, so a restart picks up from the last completed stage, not from the start. For a daily routine job like this, that separation matters more to me than which model wrote the first version of the code, because the failures will mostly come from expired sessions and changed pages, not from the code itself.