Practice Catalog

Update a practice

Changed on
patch/workspaces/{workspaceSlug}/practices/{practiceSlug}

Request

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

Path parameters

workspaceSlugstring required

Workspace slug

practiceSlugstring required

Request body

clearstring[]

Optional fields to clear before applying supplied values

criteriastring

Practice review criteria

definitionChangesstring[]

Explicit intent to change the gate or the person judged

namestring

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[]
subject'AUTHOR' | 'ASSIGNEE' | 'REVIEWER' | 'MERGER'
whatGoodLooksLikestring

Concrete example shown to the developer; not 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"
      }
    ]
  },
  "group": {
    "groupSlug": "review-ready-work"
  },
  "name": "PR Description Quality"
}

Response

Practice updated

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

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new GUIDE enum value to the request property /

    • info

      added the new VISUAL enum value to the request property /

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • breaking

      for the path request parameter workspaceSlug, the minLength was increased from 0 to 3

    • warning

      for the path request parameter workspaceSlug, the maxLength was set to 51

    • warning

      changed the pattern of the path request parameter workspaceSlug from ^[a-z0-9][a-z0-9-]{2,50}$ to ^(?!.*--)[a-z0-9][a-z0-9-]{1,49}[a-z0-9]$