77from typing import Final
88
99from ai .backend .common .api_handlers import APIResponse , BodyParam
10+ from ai .backend .common .contexts .user import current_user
1011from ai .backend .common .dto .manager .compute_session import (
1112 PaginationInfo ,
1213 SearchComputeSessionsRequest ,
1516from ai .backend .common .types import SessionId
1617from ai .backend .logging import BraceStyleAdapter
1718from ai .backend .manager .dto .context import UserContext
19+ from ai .backend .manager .errors .user import UserNotFound
1820from ai .backend .manager .services .session .actions .search import SearchSessionsAction
1921from ai .backend .manager .services .session .actions .search_kernel import SearchKernelsAction
2022from ai .backend .manager .services .session .processors import SessionProcessors
@@ -39,10 +41,14 @@ async def search_sessions(
3941 """Search compute sessions with nested container data."""
4042 log .info ("SEARCH_SESSIONS (ak:{})" , ctx .access_key )
4143
44+ user = current_user ()
45+ if user is None :
46+ raise UserNotFound ("User not found in context" )
47+
4248 # Step 1: Search sessions
4349 session_querier = self ._adapter .build_session_querier (body .parsed )
4450 session_result = await self ._session .search_sessions .wait_for_complete (
45- SearchSessionsAction (querier = session_querier )
51+ SearchSessionsAction (querier = session_querier , user_id = user . user_id )
4652 )
4753
4854 # Step 2: Fetch kernels for found sessions
@@ -51,7 +57,7 @@ async def search_sessions(
5157 if session_ids :
5258 kernel_querier = self ._adapter .build_kernel_querier_for_sessions (session_ids )
5359 kernel_result = await self ._session .search_kernels .wait_for_complete (
54- SearchKernelsAction (querier = kernel_querier )
60+ SearchKernelsAction (querier = kernel_querier , user_id = user . user_id )
5561 )
5662 kernels_by_session = self ._adapter .group_kernels_by_session (kernel_result .data )
5763
0 commit comments