Cuando implementa un rasgo, el rasgo o el tipo para el que lo está implementando deben definirse en la misma caja. En su ejemplo, ese no es el caso:el rasgo Responder
está definido por nickel
y Result
está definido por mongodb
.
La forma común de evitar esto es definir su propio tipo, envolviendo el tipo deseado en una estructura de tupla con un solo componente (el llamado patrón de tipo nuevo ):
struct Result(mongodb::error::Result<Option<Document>>);
impl Responder for Result {
...