Table of Contents

Class JobQuery

Namespace
Millrace.Storage.Monitoring
Assembly
Millrace.dll

Filter and paging arguments for QueryJobsAsync(JobQuery, CancellationToken). Frozen with the dashboard API contract (ARCHITECTURE.md §11.12).

public sealed record JobQuery : IEquatable<JobQuery>
Inheritance
JobQuery
Implements
Inherited Members

Remarks

Filters combine with AND. A property left null — or an empty States — adds no constraint. There is no OR and no free-text search; both would push query planning into providers, which §4 P2 keeps out of them.

Order is CreatedAt DESC, Id DESC — newest first, which is what an operator wants and what makes the keyset stable. Ties are impossible in practice because ids are UUIDv7 (§11.8), but the id is part of the key so the order is total regardless.

Fields

DefaultLimit

Default page size when Limit is not set to something valid.

MaxLimit

Upper bound a provider clamps Limit to.

Properties

CreatedAfter

Inclusive lower bound on CreatedAt.

CreatedBefore

Exclusive upper bound on CreatedAt.

Cursor

Opaque continuation from a previous NextCursor; null starts at the first page.

Limit

Maximum rows to return. Values below 1 are treated as DefaultLimit; values above MaxLimit are clamped to it. Never an error.

Queue

Exact queue name, or null for every queue.

States

States to include. Null or empty means any state.

Tenant

Tenant constraint; defaults to Any.