* --init
* --
* replace old structure with new DI
* fix type
* --
* moving stuff around
* moving stuff around again
* minor clean up
* --
* resolve conflict
* clea up
* old schema clean up
* further clean up
* removing unwanted merged responsibilities
* --
* improve DI and SOLID
* some type fixes
* --1
* clean up --cont
* fix DI in facade for test
* more fix
* fix
* checking
* o.o
* fix import
* fix failing test --2
* fix failing test --3
* fix failing test --4
* normalization use
* introduce facade container injection
* uniform async telemetry spans
* further improvements
* replace prismock with repo mocks
* ensure we don't pass prisma outside of repo
* fix import
* remove try catch from repo calls
* async await fixes
* using deps pattern
* more clean up and fixes
* more clean up
* address feedback --1
* separation of concern
* clean up
* test clean up
* feedback --2
* remove extra fetch
* remove await
* migrate _post test from prismock
* fix type
* --
* fix tokens path
* rename AuditRepo
* test --1
* update _post to integration test
* fix test
* fix test
* test fix maybe?
* --
* feedback
* feedback
* fixes
* more feedback
* NIT
* use sentry and logger imports as planned
* assertion in test
* add missing test case
* add tests for controllers and services
* NITs
* fix domain normalisation
* Create `createUser` method in `userCreationService`
* Refactor `UserRepository` create method to accept prisma input and remove business logic
* API use `UserCreationService`
* Move slugify to service
* Use hashPassword instead
* Type fixes in `UserCreationService`
* Add `userCreationService` tests
* API accept data object
* Type fixes
* Add user _post test
* Add test for locked user
* Add locked param to log
* Add user repository tests
* Do not return locked status
* Explicitly pass `locked` prop
* Fix tests when locked isn't returned
* Fix tests
* Pass locked prop
* Edit test name
* Use logger
* Fix passing hashed password