org-export-before-{processing,parsing} hooks are only useful when I have existing source files and I want to modify them in some way before I {process,parse} them. In my case, the source files don't exist at all, before my preparation-function is run. Regarding the preparation-function, the use case described in the manual is for running make to update files before publishing. http://orgmode.org/manual/Sources-and-destinations.html Therefore, I think it makes sense only if the source filenames are collected using org-publish-get-base-files after the preparation-function is run. With the above logic, maybe the order of execution can actually be considered a bug?