v0.1.11: Typed error contracts on canvas + service throw sites
Typed error contracts on canvas + service throw sites
Two-issue fix batch closing gaps between declared error contracts and what tools actually return.
Fixed:
- fema_dataframe_describe / fema_dataframe_query throw a typed canvas_unavailable ServiceUnavailable error instead of an untyped InternalError when DataCanvas is disabled, with a recovery hint pointing at fema_search_nfip / fema_query_dataset (#14)
- OpenFemaService.fetchDataset surfaces declared recovery hints for unknown_dataset and invalid_filter at the throw site; the raw upstream name field is dropped from invalid_filter error data (#15)
75 tests pass; bun run devcheck clean.