filters: improve docs & protections around callbacks
#13.737 aperta il 23 ott 2020
Metriche repository
- Star
- (27.997 star)
- Metriche merge PR
- (Merge medio 8g) (378 PR mergiate in 30 g)
Descrizione
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