NAME

PAGI::Server::EventValidator - Dev-mode event field validation

SYNOPSIS

# Enable in PAGI::Server
my $server = PAGI::Server->new(
    app => $app,
    validate_events => 1,  # Enable validation
);

DESCRIPTION

This module provides optional validation for PAGI events. When enabled, it validates that:

  • Required fields are present

  • Field types are correct

  • Mutually exclusive fields are handled properly

Enable this in development to catch bugs early. Disable in production for zero overhead.

FUNCTIONS

validate_http_send($event)

Validates HTTP send events: http.response.start, http.response.body, http.response.trailers.

validate_websocket_send($event)

Validates WebSocket send events: websocket.accept, websocket.send, websocket.close, websocket.keepalive.

validate_sse_send($event)

Validates SSE send events: sse.start, sse.send, sse.comment, sse.keepalive.

SEE ALSO

PAGI::Server, PAGI::Server::Connection