Validate event search parameters in FastAPI query models
Merged
FR
17h ago+59+59+01234567890123456789-96-96-01234567890123456789
Event listing and statistics routes now validate search parameters through FastAPI query models. Pydantic parses the JSON-encoded filter, enforces the existing three-character minimum for search text, and checks that search text is accompanied by an organization ID.
OpenAPI now declares the search minimum length. The frozen 2026-04 and 2026-10 fixtures include the constraint, and the internal TypeScript client was regenerated.
Closes PLR-428.
Focused query validation checks and both frozen OpenAPI comparisons passed. The event integration tests stopped at fixture setup because the sandbox blocked access to local MinIO.