Practice Catalog

Create a new practice definition

post/workspaces/{workspaceSlug}/practices

Request

  • Base URL: / (relative, and the document was published on a file host, not at the API’s origin)
  • URL: /workspaces/{workspaceSlug}/practices
  • Auth: HTTP bearer

Path parameters

workspaceSlugstring required

Workspace slug

Request body

criteriastring required

Practice review criteria

groupSlugstring nullable

Practice group to add the practice to. Omit or set to null for Unassigned.

namestring required

Human-readable name

precomputeScriptstring

TypeScript/Node static analysis run before automated review

reviewWhenobject

Automatic review state selections. An empty object imposes no state restrictions. Each selected dimension requires a nonempty set of non-null values offered by the work type descriptor. Values within a dimension are alternatives; all selected dimensions must match.

signalsstring[] required
slugstring required

URL-safe identifier unique within the workspace

subject'AUTHOR' | 'ASSIGNEE' | 'REVIEWER' | 'MERGER'
whatGoodLooksLikestring

Developer-facing exemplar; a concrete instance, not the review criteria

whyItMattersstring

Plain-language rationale shown to the developer

Example request

{
  "automatedReviewPolicy": {
    "insufficiencyReason": {
      "code": "RUNTIME_BEHAVIOR_NOT_OBSERVED"
    },
    "knownLimitations": [
      {
        "code": "RUNTIME_BEHAVIOR_NOT_OBSERVED"
      }
    ]
  },
  "name": "PR Description Quality",
  "slug": "pr-description-quality"
}

Response

Practice created

artifactKindstring required

Kind of work this practice reviews, read off its signals

createdAtstring date-time required

Timestamp when the practice was created

criteriastring required

Practice review criteria

displayOrderinteger required

Position within its group (lowest first); ties broken by name

groupSlugstring

Slug of the practice group this practice is bound to, if any

idinteger required

Practice ID

namestring required

Human-readable name

precomputeScriptstring

TypeScript/Node precompute script for static analysis before AI review

reviewWhenobject required

Automatic review state selections. An empty object imposes no state restrictions. Each selected dimension requires a nonempty set of non-null values offered by the work type descriptor. Values within a dimension are alternatives; all selected dimensions must match.

signalsstring[] required

Signals that start a practice review

slugstring required

URL-safe identifier unique within workspace

subject'AUTHOR' | 'ASSIGNEE' | 'REVIEWER' | 'MERGER' required
updatedAtstring date-time required

Timestamp when the practice was last updated

whatGoodLooksLikestring

Developer-facing exemplar (developer layer)

whyItMattersstring

Developer-facing rationale (developer layer)

Example response

{
  "artifactKind": "scm.pull_request",
  "automatedReviewPolicy": {
    "insufficiencyReason": {
      "code": "RUNTIME_BEHAVIOR_NOT_OBSERVED"
    },
    "knownLimitations": [
      {
        "code": "RUNTIME_BEHAVIOR_NOT_OBSERVED"
      }
    ]
  },
  "automatedReviewWithdrawal": {
    "code": "RUNTIME_BEHAVIOR_NOT_OBSERVED"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.