Error(error) -> Error(error) has strong if err != nil { return err; } vibes, and I don't consider that a good thing.
Pattern matching on Ok/Error is one of the best known error handling, while go error handling is one of the worst. They are about as far from each other as possible.
[1]: https://gleam.run/news/v0.25-introducing-use-expressions/
The beauty here is being compelled to handle both the happy and sad paths. You cannot just pretend the sad path doesn't exist.