Skip to main content

Schema

Tasq validates entity data at the store layer on create and update operations. This reference summarizes the public field constraints that clients should respect.

Issue Tracker Entities

EntityRequired fieldsKey constraints
IssueprojectId, titletitle 1-500 chars, description max 10,000 chars, assignee max 200 chars, immutable project ownership
Artifacttype, dataType, dataValueone per issue and type; initial type pull_request has data type url; URL is trimmed, absolute HTTP(S), host-required, userinfo-free, max 4,096 UTF-8 bytes
CommentissueId, author, bodybody 1-10,000 chars, type defaults to general
ChangeRequestissueId, author, bodybody 1-10,000 chars and editable only while open; status defaults to open; terminal requests are immutable
AttachmententityType, entityId, fileimage PNG/JPEG/GIF/WebP, max 5 MiB
Projectkey, name, locationkey is uppercase legacy (A-Z, 0-9, _, 1-20 chars) or lowercase kebab-case (1-64 chars) — see the design reference for the exact regex; name 1-200 chars, description max 10,000 chars, absolute location
ProjectWorkflowprojectId, frontmatter, body, checksumone workflow override per project, checksum is SHA256 hex

Orchestrator Entities

EntityRequired fieldsKey constraints
RunissueId, attempt, orchestratorIdrun ID generated, status defaults to queued
RunnerEventrunId, occurredAtpayload JSON must be valid when present
WorkspaceMetadataworkspaceKey, issueId, pathworkspace key max 200 chars, paths must be absolute
WorkspaceSetupFailureissueId, errorrecords setup failure context

Enums

FieldValues
Issue statusbacklog, ready, in_progress, review, done, blocked, failed, cancelled, duplicate
Queue statusbacklog, pending, queued, processing, completed, inactive
Issue prioritylow, normal, high, urgent
Comment typeprogress, blocker, handoff, general
Change-request statusopen, in_progress, resolved, canceled
Attachment entity typeissue, comment
Artifact typepull_request
Artifact data typeurl
Run statusqueued, running, succeeded, failed, cancelled

String and Path Limits

Absolute path fields must start with /. Clients such as tq project add check local directory existence when they can access the target filesystem.

State Transitions

Change requests allow open to in_progress or canceled, and in_progress to resolved or canceled. Resolving can record the orchestrator run and a result comment on the same issue. resolved and canceled are terminal states.