1 - Pra mim o ponto principal é que você não implementou um teste de unidade sequer. O framework de tests do Rust é um dos mais fáceis e performáticos. No caso dos seus endpoints você poderia simular algumas requisições e comparar o resultado esperado, como um teste de integração.

2 - Na declaração dos módulos no main.rs, eu prefiro criar um arquivo mod.rs dentro de cada pasta e colocar essa declaração lá. A vantagem do mod.rs é que se vc quiser declarar alguma função ou tipo de dados daquele módulo, ele cabe certinho nesse arquivo.

3 - Não conheço muito bem o Surreal, mas dentro dos seus DAOs vc invoca 'unwrap' direto ao invés de usar 'if let' ou 'match'. Isso pode fazer que o seu programa gere um panic se a sua query falhar.

Abs.