client.revisions¶
Bases: SyncResource
Sync annotation-revisions namespace (client.revisions).
list_for_asset ¶
list_for_asset(project_id: UUID | str, asset_id: UUID | str, *, limit: int | None = None, cursor: str | None = None) -> Page[RevisionSummary]
List an asset's commits, newest first (cursor-paginated; iterate for all pages). One entry per submit/approve/reject boundary.
Raises:
| Type | Description |
|---|---|
BadRequestError
|
malformed |
ForbiddenError
|
caller is not a project member (AUTH_FORBIDDEN). |
get_for_asset ¶
The full annotation snapshot at one commit — a complete snapshot, not a page.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
seq
|
int
|
the per-asset commit number ( |
required |
Raises:
| Type | Description |
|---|---|
NotFoundError
|
no such commit for this asset (UNCATEGORIZED). |
ForbiddenError
|
caller is not a project member (AUTH_FORBIDDEN). |
list_for_annotation ¶
list_for_annotation(project_id: UUID | str, annotation_id: UUID | str, *, limit: int | None = None, cursor: str | None = None) -> Page[AnnotationBlameEntry]
One shape's state at each commit it appeared in, newest first — the blame timeline for a single annotation (cursor-paginated).
Raises:
| Type | Description |
|---|---|
BadRequestError
|
malformed |
ForbiddenError
|
caller is not a project member (AUTH_FORBIDDEN). |
Response models¶
Models returned by client.revisions methods (fields, types, and what each means).
Annotation-revision (blame / diff) domain models (ADR-0071).
The revision surface is read-only: rows are written server-side at workflow
commit boundaries (submit / approve / reject), one row per annotation per commit.
A commit is identified by submit_seq (the per-asset commit number); rows that
share (asset_id, submit_seq) form one commit.
Depends only on common (enums + the read-side geometry union) — a leaf module
in the type dependency graph.
RevisionSummary ¶
Bases: BaseModel
One commit in an asset's history (the editor's revision list) — who committed it, why, and how many annotations the snapshot captured.
RevisionAnnotation ¶
Bases: BaseModel
One annotation's state as captured in a commit. annotation_id is
nullable — a snapshot can outlive its annotation under hard-delete (ADR-0091).
geometry is the constraint-free READ union from common (None for a
classification shape); data is loose attribute/classification passthrough.
data
class-attribute
instance-attribute
¶
Free-form class-attribute values and annotation metadata (deliberate dict).
RevisionDetail ¶
Bases: BaseModel
A single commit plus the full annotation snapshot at that point — what the editor renders to view or diff a past state. A complete snapshot, not a page.