fix: add non-nesting session level deriver status (#145)
This commit is contained in:
parent
326ea24955
commit
4d5aa4cdb2
|
|
@ -1958,10 +1958,10 @@ def _build_status_response(
|
|||
pending_work_units=counts.pending,
|
||||
)
|
||||
|
||||
sessions: dict[str, schemas.DeriverStatus] = {}
|
||||
sessions: dict[str, schemas.SessionDeriverStatus] = {}
|
||||
for session_id, data in counts.sessions.items():
|
||||
total = data.completed + data.in_progress + data.pending
|
||||
sessions[session_id] = schemas.DeriverStatus(
|
||||
sessions[session_id] = schemas.SessionDeriverStatus(
|
||||
peer_id=peer_name,
|
||||
session_id=session_id,
|
||||
total_work_units=total,
|
||||
|
|
|
|||
|
|
@ -329,6 +329,22 @@ class MessageBulkData(BaseModel):
|
|||
workspace_name: str
|
||||
|
||||
|
||||
class SessionDeriverStatus(BaseModel):
|
||||
peer_id: str | None = Field(
|
||||
default=None,
|
||||
description="ID of the peer (optional when filtering by session only)",
|
||||
)
|
||||
session_id: str | None = Field(
|
||||
default=None, description="Session ID if filtered by session"
|
||||
)
|
||||
total_work_units: int = Field(description="Total work units")
|
||||
completed_work_units: int = Field(description="Completed work units")
|
||||
in_progress_work_units: int = Field(
|
||||
description="Work units currently being processed"
|
||||
)
|
||||
pending_work_units: int = Field(description="Work units waiting to be processed")
|
||||
|
||||
|
||||
class DeriverStatus(BaseModel):
|
||||
peer_id: str | None = Field(
|
||||
default=None,
|
||||
|
|
@ -343,6 +359,6 @@ class DeriverStatus(BaseModel):
|
|||
description="Work units currently being processed"
|
||||
)
|
||||
pending_work_units: int = Field(description="Work units waiting to be processed")
|
||||
sessions: dict[str, "DeriverStatus"] | None = Field(
|
||||
sessions: dict[str, SessionDeriverStatus] | None = Field(
|
||||
default=None, description="Per-session status when not filtered by session"
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in New Issue