Why is the routes code doing this ? All our _... API calls are now broken

In programming it is very common to mark methods and properties as private by prefixing them with an underscore. This convention is also used in many routing implementations like in Next.js and Astro.

The actions are still accessible from other actions but not from a public Url. This was implemented since some actions you don't want to be accessible to the public, like actions run by a cronjob to cleanup the database or for sending emails. Since it was often requested to make an action private, we implemented it like this since it was a very common way to do so.

There is no workaround, you'll have to rename the actions or edit the routes.js file and comment that line out.