pub fn validate_request(
payload: &Value,
max_body_size: usize,
max_keys_per_request: usize,
) -> Result<(), ValidationError>Expand description
Run all validation checks on an incoming request payload.
This is the single entry point called by every process_* function in handlers.rs. It checks everything in one pass:
- Payload size (10 MB limit)
- JSON nesting depth (32 levels max)
- Collection name validity
- Key name validity (single key, batch keys, data map keys)
- Field name validity (projections, joins, WHERE clause)
Returns Ok(()) if all checks pass, or the first ValidationError found.