schema/smartcloud.schema.json, which is generated from the Effect Schema in packages/config. The guides explain what each section does; this page lists every key.
Top level
Declarative repository automation: labels, conventions and policy.
Other keys are an error.
Types
ExtendsEntry
A preset to extend, as owner/repo/path@ref. The ref is optional. Pattern:^(?!\.\.?\/)([A-Za-z0-9_.-]+)\/(?!\.\.?\/)([A-Za-z0-9_.-]+)\/((?!\.\.?(?:\/|@|$))[^/@]+(?:\/(?!\.\.?(?:\/|@|$))[^/@]+)*)(?:@([^@\s]+))?$.
Type: string.
Label
Other keys are an error.
Color
Six hex digits, for example 0E8A16. Pattern:^#?[0-9a-fA-F]{6}$.
Type: string.
RuleId
A label or rule key. Pattern:^\S[\s\S]*\S$|^\S$|^$. At least 1 character(s).
Type: string.
LabelRule
Other keys are an error.
Subjects
The subjects a rule applies to. Omitted means pull requests and issues. Type: list of one ofpullRequest, issue.
ConditionGroup
Other keys are an error.
NonNegativeInt
Minimum: 0. Type: integer.Condition
Type: any of titleMatches, descriptionMatches, creatorMatches, branchMatches, isOpen, isLocked, isDraft, pendingReview, requestedChanges, commitsSignedOff, hasLabel, isStale, isAbandoned, filesMatch, changesSize, isApproved, commitMessagesMatch, hasTrailer, and](#and), [or, not](#not), [only.Pattern
Type: string.Conventions
Other keys are an error.
ConventionRule
Other keys are an error.
Roles
Other keys are an error.
Links
Other keys are an error.
Commits
Other keys are an error.
Level
Type: one oferror, warning.
Disclosure
Other keys are an error.
Reviews
Other keys are an error.
RequestApproval
Other keys are an error.
AutomaticApprove
Other keys are an error.
Stale
Other keys are an error.
NonNegative
Minimum: 0. Type: number.Settings
Other keys are an error.
Sync
Other keys are an error.
Conditions
Each condition is an object with atype naming it. See Conditions for how groups and combinators evaluate.
titleMatches
The title matches a pattern.
Other keys are an error.
descriptionMatches
The description matches a pattern.
Other keys are an error.
creatorMatches
The author’s login matches a pattern.
Other keys are an error.
branchMatches
The pull request’s head branch matches a pattern.
Other keys are an error.
isOpen
The subject is open, or closed when false.
Other keys are an error.
isLocked
The conversation is locked, or unlocked when false.
Other keys are an error.
isDraft
The pull request is a draft, or ready when false.
Other keys are an error.
pendingReview
Requested reviewers have not reviewed yet.
Other keys are an error.
requestedChanges
A reviewer’s latest review requests changes.
Other keys are an error.
commitsSignedOff
Every non-merge commit has a Signed-off-by trailer matching its author email.
Other keys are an error.
hasLabel
The subject has the label, or lacks it when false.
Other keys are an error.
isStale
No activity for at least this many days.
Other keys are an error.
isAbandoned
Carries the stale label and has had no activity for at least this many days.
Other keys are an error.
filesMatch
At least one changed file matches a glob.
Other keys are an error.
changesSize
Lines added plus deleted are at least min and below max.
Other keys are an error.
isApproved
No reviewer is pending or requesting changes, and at least this many approved.
Other keys are an error.
commitMessagesMatch
Commit messages match a pattern.
Other keys are an error.
hasTrailer
Commits carry the trailer, with a value matching the pattern when one is given.
Other keys are an error.
$and
Every group passes.
Other keys are an error.
$or
At least one group passes.
Other keys are an error.
$not
The group fails.
Other keys are an error.
$only
Exactly this many of the groups pass.
Other keys are an error.