Functions
compile_middleware_chain
2
Callable[[Request], Any]
▼
Build middleware chain once. Returns async handler(req) -> Response.
compile_middleware_chain
2
Callable[[Request], Any]
▼
def compile_middleware_chain(middleware: tuple[Callable[..., Any], ...], dispatch: Callable[[Request], Any]) -> Callable[[Request], Any]
Parameters
| Name | Type | Description |
|---|---|---|
middleware |
tuple[Callable[..., Any], ...] |
|
dispatch |
Callable[[Request], Any] |
Returns
Callable[[Request], Any]
create_request_handler
10
Callable[[Request], Any]
▼
Build the full middleware + dispatch chain once. Reuse per request.
create_request_handler
10
Callable[[Request], Any]
▼
def create_request_handler(*, router: Router, middleware: tuple[Callable[..., Any], ...], tool_registry: ToolRegistry | None, mcp_path: str, debug: bool, providers: dict[type, Callable[..., Any]] | None, kida_env: Environment | None, oob_registry: OOBRegistry | None = None, fragment_target_registry: FragmentTargetRegistry | None = None, discovered_routes: list[Any] | None = None) -> Callable[[Request], Any]
Parameters
| Name | Type | Description |
|---|---|---|
router |
Router |
|
middleware |
tuple[Callable[..., Any], ...] |
|
tool_registry |
ToolRegistry | None |
|
mcp_path |
str |
|
debug |
bool |
|
providers |
dict[type, Callable[..., Any]] | None |
|
kida_env |
Environment | None |
|
oob_registry |
OOBRegistry | None |
Default:None
|
fragment_target_registry |
FragmentTargetRegistry | None |
Default:None
|
discovered_routes |
list[Any] | None |
Default:None
|
Returns
Callable[[Request], Any]
handle_request
17
None
▼
Process a single HTTP request through the full pipeline.
async
handle_request
17
None
▼
async def handle_request(scope: Scope, receive: Receive, send: Send, *, router: Router, middleware: tuple[Callable[..., Any], ...], error_handlers: dict[int | type, Callable[..., Any]], kida_env: Environment | None = None, debug: bool, providers: dict[type, Callable[..., Any]] | None = None, tool_registry: ToolRegistry | None = None, mcp_path: str = '/mcp', sse_heartbeat_interval: float = 15.0, sse_retry_ms: int | None = None, sse_close_event: str | None = None, compiled_handler: Callable[[Request], Any] | None = None, oob_registry: OOBRegistry | None = None, fragment_target_registry: FragmentTargetRegistry | None = None) -> None
Parameters
| Name | Type | Description |
|---|---|---|
scope |
Scope |
|
receive |
Receive |
|
send |
Send |
|
router |
Router |
|
middleware |
tuple[Callable[..., Any], ...] |
|
error_handlers |
dict[int | type, Callable[..., Any]] |
|
kida_env |
Environment | None |
Default:None
|
debug |
bool |
|
providers |
dict[type, Callable[..., Any]] | None |
Default:None
|
tool_registry |
ToolRegistry | None |
Default:None
|
mcp_path |
str |
Default:'/mcp'
|
sse_heartbeat_interval |
float |
Default:15.0
|
sse_retry_ms |
int | None |
Default:None
|
sse_close_event |
str | None |
Default:None
|
compiled_handler |
Callable[[Request], Any] | None |
Default:None
|
oob_registry |
OOBRegistry | None |
Default:None
|
fragment_target_registry |
FragmentTargetRegistry | None |
Default:None
|
_invoke_handler
8
AnyResponse
▼
Call the matched route handler, converting path params and return value.
async
_invoke_handler
8
AnyResponse
▼
async def _invoke_handler(match: RouteMatch, request: Request, *, kida_env: Environment | None = None, providers: dict[type, Callable[..., Any]] | None = None, validate_blocks: bool = False, force_inline_sync: bool = False, oob_registry: OOBRegistry | None = None, fragment_target_registry: FragmentTargetRegistry | None = None) -> AnyResponse
Parameters
| Name | Type | Description |
|---|---|---|
match |
RouteMatch |
|
request |
Request |
|
kida_env |
Environment | None |
Default:None
|
providers |
dict[type, Callable[..., Any]] | None |
Default:None
|
validate_blocks |
bool |
Default:False
|
force_inline_sync |
bool |
Default:False
|
oob_registry |
OOBRegistry | None |
Default:None
|
fragment_target_registry |
FragmentTargetRegistry | None |
Default:None
|
Returns
AnyResponse
_read_body_if_needed_from_plan
2
dict[str, Any] | None
▼
Pre-read form/JSON body if the handler has extractable dataclass params.
Uses …
async
_read_body_if_needed_from_plan
2
dict[str, Any] | None
▼
async def _read_body_if_needed_from_plan(plan: InvokePlan | None, request: Request) -> dict[str, Any] | None
Pre-read form/JSON body if the handler has extractable dataclass params.
Uses compiled plan when available.
Parameters
| Name | Type | Description |
|---|---|---|
plan |
InvokePlan | None |
|
request |
Request |
Returns
dict[str, Any] | None
_read_body_if_needed_inspect
2
dict[str, Any] | None
▼
Fallback: inspect handler for extractable params, read body if needed.
async
_read_body_if_needed_inspect
2
dict[str, Any] | None
▼
async def _read_body_if_needed_inspect(handler: Callable[..., Any], request: Request) -> dict[str, Any] | None
Parameters
| Name | Type | Description |
|---|---|---|
handler |
Callable[..., Any] |
|
request |
Request |
Returns
dict[str, Any] | None