Comment

Comment by qw

From what I can tell it is a library for standardising return values that is independent on the transport medium. A HTTP service may return a particular http code or body, and gRPC would have its own representation.

I think this library maps the different representations into a single representation. The business logic, metrics, logging etc. will use the single representation instead of being tightly coupled to the transport medium

Example from the docs where the "PAYMENT_DECLINED" state is mapped from protocol specific responses:

  PAYMENT_DECLINED
  |
  +-- HTTP 422
  +-- gRPC FAILED_PRECONDITION
  |
  --> logs/metrics keep PAYMENT_DECLINED
parent qw 2 months ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton