Using a shared protocol to serialize the error in the backend
allows clients to use that same protocol to deserialize it.
Changes to this protocol will be caught in tests.
* Leaderboard endpoints proof of concept
- New leaderboards router
- Two endpoints /api/v1/leaderboards/assistant & /api/v1/leaderboards/prompter
- Function in prompt_repository to calculate user scores
* Separating create vs 'eventual' evaluate routes
* Adding display_name to result
* Missing / in routes
* Updating route to be experimental
* Fixing format for pre-commit