However, on the tagged builds the publish job, which is supposed to depend on the cypress job, runs though the cypress job doesn’t. I have no idea how that’s even remotely possible.
I think you might need to set up the tag filter on your build job as well. From my experience, tags work only if every job in the “chain” has the correct filters. Since end-to-end-tests requires build, and build does not run for tags (in the current config), this would explain why the job does not run.