mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-11-12 14:00:35 +00:00
* fix(middleware): scan PII emails in linear time The email detector's pattern restarts at every position inside a whitespace-free run and consumes the rest of the run before failing to find '@', so a scan is quadratic in the run length. PiiRedactionMiddleware re-redacts every user message on every model call, on the event loop, so one pasted 100 KB hex dump stalled the Gateway for ~6 s per model call. Scan from run starts only (a local part must reach the end of its run), and match anchored where the previous match ended so glued addresses such as 'a@b.cc+c@d.org' keep both matches, exactly as before. * docs(changelog): reference #8006 for the linear PII email scan * fix(middleware): group the embedded email pattern and pin every detector's linearity Wrap the pattern behind the run-start lookbehind in a group so a future top-level alternative in _EMAIL_PATTERN cannot escape the lookbehind, and add one whitespace-free payload per other detector to the linearity test so the AGENTS.md rule is enforced for all of them. --------- Co-authored-by: Willem Jiang <willem.jiang@gmail.com>