<dngrs[m]> "It automates the flattening of..." <- so iow you'd roughly have something like this (that's `thiserror` on std because I'm lazy like that)
```rust

#[derive(Error, Debug)]
enum Failure {
    #[error(transparent)]
    Connection(#[from] ConnectionFailure),
    #[error("moooom I don't wanna")]
    IJustDontFeelLikeIt,
}

#[derive(Error, Debug)]
enum EndpointFailure {
    #[error("bork bork bork")]
    Bork,
    #[error("hork")]
    Hork,
    #[error("blork")]
    Blork,
}

#[derive(Error, Debug)]
enum ServerFailure {
    #[error(transparent)]
    Endpoint(#[from] EndpointFailure),
    #[error("have you tried turning it on again?")]
    PoweredOff,
    #[error("spawn more overlords")]
    HellGateNotOpen,
}
#[derive(Error, Debug)]
enum ConnectionFailure {
    #[error(transparent)]
    Server(#[from] ServerFailure),
    #[error("Cable missing")]
    WirelessCableMissing,
    #[error("Wednesday")]
    CaptainItsWednesday,
}
```