Skip to content

client.projects.judging_queue

client.projects.judging_queue — the projects.judgingQueue operations.

On AsyncKindgi every method is the same, awaited.

list(
project_id: str | UUID,
/,
*,
state: Literal['open', 'judged', 'dismissed', 'erased'] | None = None,
agent_id: str | UUID | None = None,
rule_id: str | UUID | None = None,
judge_class_id: str | UUID | None = None,
for_me: bool | None = None,
added_after: str | None = None,
closed_after: str | None = None,
limit: int | None = None,
cursor: str | None = None,
timeout: float | None = None,
) -> JudgingQueuePage

The project's judging queue. GET /v1/projects/{projectId}/judging-queue

Queued runs, oldest first: never a run's content, only what it was, which rules queued it, whose judgment they want and the judgments so far, and what the caller may do with it (can). An item closes as judged once every rule that queued it has the judgment it wants. forMe=true: the items any judgment closes, or that want a class the caller may assert. limit=0 answers only the total. Needs read on the project.

dismiss(
project_id: str | UUID,
run_id: str | UUID,
body: JudgingDismissBody | Mapping[str, Any] | None = None,
/,
*,
timeout: float | None = None,
**fields: Any,
) -> JudgingQueueItem

Dismiss a queued run. POST /v1/projects/{projectId}/judging-queue/{runId}/dismiss

Not worth judging: it leaves the open queue, with who dismissed it and why. reopen undoes it. Needs write on the project, as judging the run does.

reopen(
project_id: str | UUID,
run_id: str | UUID,
/,
*,
timeout: float | None = None,
) -> JudgingQueueItem

Reopen a dismissed run. POST /v1/projects/{projectId}/judging-queue/{runId}/reopen

Back in the open queue. Only a dismissed item reopens: a judged one was closed by its judgments. Needs write on the project.