Today a TypeScript refactor produced 15 compiler errors.
It looked worse than it was.
My Candidate Tracker used a type called AsyncResult<T> with errors represented only as strings.
While adding a real PostgreSQL repository, two design problems became clear:
the result itself was not asynchronous; the surrounding Promise was






