You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(etl-uvicorn): declare blame in failure responses instead of encoding it in status codes
Status codes carry transport semantics for the immediate caller and cannot
also carry business blame: a 422 for a malformed reserved field (composed
by the platform) and a 422 for a customer's unreadable file are different
faults wearing the same number. Failure responses now say whose fault it
is explicitly:
- the invoke envelope gains an optional `blame`, set to "user" only when
the plugin raised the UserError family — a fault in something the
customer owns. Absent means not-the-customer's: an orchestrator must
never infer customer fault from the status class alone.
- middleware error bodies carry the invocation-settings taxonomy `reason`
code alongside `detail`, so an orchestrator can recognize a
platform-composed payload failure whatever status answered the hop.
0 commit comments