exlab_wizard.api.routers.sessions#
/sessions router. Backend Spec §4.6.1, §4.6.2.
Endpoints:
POST /sessions– open a creation session (project or run).GET /sessions/{id}– snapshot of session state.POST /sessions/{id}/resume– supplyextra_inputsafter aPluginInputRequiredprompt.POST /sessions/{id}/cancel– abort the session, optionally discarding the partial directory.WS /sessions/{id}/events– per-session event channel (§4.6.2 envelope types live inapi/events.py).
The router consumes AppDependencies via request.app.state;
in production the launcher constructs the dependencies, in tests the
fixture passes a stub. Setup-state gating is applied via
api.setup.setup_state_gate() on the routes that need a complete
config.
Functions
Construct the |
Classes
|
Response shape for the create / status endpoints. |
- class exlab_wizard.api.routers.sessions.SessionHandleResponse(**data)[source]#
Bases:
BaseModelResponse shape for the create / status endpoints.
- Parameters:
data (
Any)
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].