WS7 review fixes: 20k text cap (ReDoS mitigation) + politeness-bucket note

↗ view on GitHub · sloth-ninja · 2026-07-19 · 1d0b2513

Independent review of PR #24 (approve-with-fixes):

1. Availability: the ported ACT_TITLE regex is O(n^2) and extraction runs
   synchronously before the first await - a pathological 100k paste blocked
   the Node event loop ~6.7s (reviewer-benchmarked), stalling all requests
   including SSE chat. Minimal mitigation: MAX_TEXT_LENGTH lowered from
   100_000 to 20_000 (worst case well under ~0.5s). 413 copy, boundary
   tests (20_000 / 20_001), .env.example and BUILD_LOG updated. The regex
   itself stays byte-identical to evals per the sync mandate; a future
   synced regex fix in both suites remains recommended.

2. Documented the conscious trade-off that verification shares the global
   legislation.gov.uk politeness bucket with the chat tools (one
   50-citation check can queue chat legislation lookups for tens of
   seconds - by design, a single bucket is what politeness to the
   upstream host requires).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Repository Sloth-ninja/JessicaOSS
Author sloth-ninja <ezanahaddis@gmail.com>
Authored
Parents a84f0465
Stats 4 files changed , +36 , -11
Part of WS7: Citation Checker (live legislation.gov.uk verification)

Capture this commit into my fork

Download a Markdown prompt that tells Claude how to port this exact commit into your working tree. Run it via claude -p < capture-commit-1d0b2513.md from inside the repo you want the change in.

⬇ Download capture-commit-1d0b2513.md