Just a quick update: I fixed and deployed the fix for the API error. It turns out it had to do with routing.

Creating and updating both use POST requests (due to something on web). On the API side, the routes were out of order, so every update request was being treated as a create request. I should probably just figure out how to get Svelte to properly send PUT/PATCH requests, but for now, the issue is fixed.

Next milestone

Editing works for projects outside of any necessary polish, so let's tackle checkins next.