Tested everything, and I don't see any regressions.
Additional notes:
Build failed on previous PR because it was pulling a newer version of nodejs from a different source than we were using, so I've updated the Dockerfile to pin the preferred nodejs source.
Switched all code to use UTC, because npgsql is now enforcing timestamp with timezone columns to use UTC time. (These columns were always UTC in the database regardless.)
Using SqlQuery instead of FromSql allows us to stop pretending that certain models are entities, making for cleaner, easier to maintain code.
Switched IReadOnlyCollection to T[] in search criteria models because npgsql is currently running into errors translating non-arrays into SQL.
Update to .NET 8 preview
Tested everything, and I don't see any regressions.
Additional notes: