feat(gateway): support per-channel and per-session queue policy overrides

This commit is contained in:
William Valentin
2026-02-16 11:51:26 -08:00
parent f7284a4ef1
commit fbd24d4379
11 changed files with 181 additions and 9 deletions
+10
View File
@@ -807,6 +807,15 @@ server:
mode: collect # collect | steer | interrupt
cap: 50 # max pending requests per session lane
overflow: drop_old # drop_old | drop_new
overrides:
channels:
ws:
mode: steer
cap: 10
sessions:
ws:vip-user:
mode: interrupt
overflow: drop_new
```
Notes:
@@ -814,6 +823,7 @@ Notes:
- `steer` and `interrupt` keep only the latest pending request while one is active.
- `interrupt` currently does not force-stop already running work; use `agent.cancel` for active cancellation.
- On overflow, `drop_old` evicts the oldest pending request, `drop_new` rejects the new request.
- Override precedence: exact `sessions` match first, then `channels`.
## Gateway Request Body Limit