envoyproxy/envoy
View on GitHubfilters: improve docs & protections around callbacks
Open
#13,737 opened on Oct 23, 2020
area/httphelp wantedtech debt
Repository metrics
- Stars
- (27,997 stars)
- PR merge metrics
- (Avg merge 8d) (378 merged PRs in 30d)
Description
We recently ran into an internal problem where an in-house filter was returning a local reply and immediately after returning FilterHeaderStatus::Continue, which ends up confusing the Router filter machinery.
A few things can be done to improve the experience for filter developers:
-
improve docs around the contract with filters (e.g.: #13678, I'll send another one for docs/root/faq/extensions/contract.rst as well)
-
enforce more checks to ensure callbacks cannot be called after a local reply has been sent
-
more assertions around the filter chain state machine
cc: @alyssawilk @mattklein123