Skip to content

vcs:pr

FieldValue
Prefixvcs:pr
Namespace constantVCSPRNamespace
Subjects constantVCSPRSubjects
Kindbus
Schema recordVCSPRSchemas
Tierframework
Package@makaio/contracts
Defined inpackages/contracts/src/capabilities/vcs-pr/namespace.ts
KeyWireTypeSchema
checks.changedvcs:pr.checks.changedeventschemas.ts
conflictedvcs:pr.conflictedeventschemas.ts
getvcs:pr.getrpcschemas.ts
labels.changedvcs:pr.labels.changedeventschemas.ts
listvcs:pr.listrpcschemas.ts
reviews.changedvcs:pr.reviews.changedeventschemas.ts
stateChangedvcs:pr.stateChangedeventschemas.ts
syncvcs:pr.syncrpcschemas.ts

Checks changed. Subject: vcs:pr.checks.changed

Type: Event

FieldTypeRequired
checks{ status: "pending" | "passing" | "failing" | "mixed"; total: number; passed: number; failed: number; pending: number; skipped: number; failedChecks: { id: number; name: string; workflowName: string; conclusion: string; failedStep: string | null; detailsUrl: string | null; completedAt: string | null; source: "check-run" | "commit-status"; }[]; summary: string; }yes
target{ repository: string; prNumber: number; branch?: string | undefined; headSha?: string | undefined; }yes

Merge conflict detected. Subject: vcs:pr.conflicted

Type: Event

FieldTypeRequired
target{ repository: string; prNumber: number; branch?: string | undefined; headSha?: string | undefined; }yes

Get enriched PR state. Subject: vcs:pr.get

Type: Request (RPC)

Request:

FieldTypeRequired
prNumbernumberyes
repoPathstringyes

Response:

FieldTypeRequired
pr{ repository: string; number: number; title: string; branch: string; baseBranch: string; author: string; url: string; state: "closed" | "merged" | "open"; draft: boolean; mergeable: boolean | null; checks: { status: "pending" | "passing" | "failing" | "mixed"; total: number; passed: number; failed: number; pending: number; skipped: number; failedChecks: { id: number; name: string; workflowName: string; conclusion: string; failedStep: string | null; detailsUrl: string | null; completedAt: string | null; source: "check-run" | "commit-status"; }[]; summary: string; }; reviews: { status: "pending" | "approved" | "changes-requested"; approvals: number; changesRequested: number; commented: number; reviewers: { reviewer: string; state: "APPROVED" | "CHANGES_REQUESTED" | "COMMENTED" | "PENDING" | "DISMISSED"; submittedAt: string | null; }[]; summary: string; }; findings: { total: number; open: number; addressed: number; verified: number; dismissed: number; openBySeverity: { critical: number; major: number; minor: number; nitpick: number; }; summary: string; }; labels: { name: string; semantic: "custom" | "type" | "status" | "priority" | "size" | "review" | "automation" | null; }[]; readiness: { status: "ready" | "blocked" | "needs-attention"; blockers: string[]; warnings: string[]; }; syncedAt: number; headSha: string; }yes

Labels changed. Subject: vcs:pr.labels.changed

Type: Event

FieldTypeRequired
labels{ name: string; semantic: "custom" | "type" | "status" | "priority" | "size" | "review" | "automation" | null; }[]yes
target{ repository: string; prNumber: number; branch?: string | undefined; headSha?: string | undefined; }yes

List enriched PR states. Subject: vcs:pr.list

Type: Request (RPC)

Request:

FieldTypeRequired
branchstring | undefinedno
repoPathstringyes

Response:

FieldTypeRequired
prs{ repository: string; number: number; title: string; branch: string; baseBranch: string; author: string; url: string; state: "closed" | "merged" | "open"; draft: boolean; mergeable: boolean | null; checks: { status: "pending" | "passing" | "failing" | "mixed"; total: number; passed: number; failed: number; pending: number; skipped: number; failedChecks: { id: number; name: string; workflowName: string; conclusion: string; failedStep: string | null; detailsUrl: string | null; completedAt: string | null; source: "check-run" | "commit-status"; }[]; summary: string; }; reviews: { status: "pending" | "approved" | "changes-requested"; approvals: number; changesRequested: number; commented: number; reviewers: { reviewer: string; state: "APPROVED" | "CHANGES_REQUESTED" | "COMMENTED" | "PENDING" | "DISMISSED"; submittedAt: string | null; }[]; summary: string; }; findings: { total: number; open: number; addressed: number; verified: number; dismissed: number; openBySeverity: { critical: number; major: number; minor: number; nitpick: number; }; summary: string; }; labels: { name: string; semantic: "custom" | "type" | "status" | "priority" | "size" | "review" | "automation" | null; }[]; readiness: { status: "ready" | "blocked" | "needs-attention"; blockers: string[]; warnings: string[]; }; syncedAt: number; headSha: string; }[]yes

Reviews changed. Subject: vcs:pr.reviews.changed

Type: Event

FieldTypeRequired
reviews{ status: "pending" | "approved" | "changes-requested"; approvals: number; changesRequested: number; commented: number; reviewers: { reviewer: string; state: "APPROVED" | "CHANGES_REQUESTED" | "COMMENTED" | "PENDING" | "DISMISSED"; submittedAt: string | null; }[]; summary: string; }yes
target{ repository: string; prNumber: number; branch?: string | undefined; headSha?: string | undefined; }yes

Any sub-state changed. Subject: vcs:pr.stateChanged

Type: Event

FieldTypeRequired
pr{ repository: string; number: number; title: string; branch: string; baseBranch: string; author: string; url: string; state: "closed" | "merged" | "open"; draft: boolean; mergeable: boolean | null; checks: { status: "pending" | "passing" | "failing" | "mixed"; total: number; passed: number; failed: number; pending: number; skipped: number; failedChecks: { id: number; name: string; workflowName: string; conclusion: string; failedStep: string | null; detailsUrl: string | null; completedAt: string | null; source: "check-run" | "commit-status"; }[]; summary: string; }; reviews: { status: "pending" | "approved" | "changes-requested"; approvals: number; changesRequested: number; commented: number; reviewers: { reviewer: string; state: "APPROVED" | "CHANGES_REQUESTED" | "COMMENTED" | "PENDING" | "DISMISSED"; submittedAt: string | null; }[]; summary: string; }; findings: { total: number; open: number; addressed: number; verified: number; dismissed: number; openBySeverity: { critical: number; major: number; minor: number; nitpick: number; }; summary: string; }; labels: { name: string; semantic: "custom" | "type" | "status" | "priority" | "size" | "review" | "automation" | null; }[]; readiness: { status: "ready" | "blocked" | "needs-attention"; blockers: string[]; warnings: string[]; }; syncedAt: number; headSha: string; }yes
target{ repository: string; prNumber: number; branch?: string | undefined; headSha?: string | undefined; }yes

Force re-sync PR state. Subject: vcs:pr.sync

Type: Request (RPC)

Request:

FieldTypeRequired
prNumbernumberyes
repoPathstringyes

Response:

FieldTypeRequired
pr{ repository: string; number: number; title: string; branch: string; baseBranch: string; author: string; url: string; state: "closed" | "merged" | "open"; draft: boolean; mergeable: boolean | null; checks: { status: "pending" | "passing" | "failing" | "mixed"; total: number; passed: number; failed: number; pending: number; skipped: number; failedChecks: { id: number; name: string; workflowName: string; conclusion: string; failedStep: string | null; detailsUrl: string | null; completedAt: string | null; source: "check-run" | "commit-status"; }[]; summary: string; }; reviews: { status: "pending" | "approved" | "changes-requested"; approvals: number; changesRequested: number; commented: number; reviewers: { reviewer: string; state: "APPROVED" | "CHANGES_REQUESTED" | "COMMENTED" | "PENDING" | "DISMISSED"; submittedAt: string | null; }[]; summary: string; }; findings: { total: number; open: number; addressed: number; verified: number; dismissed: number; openBySeverity: { critical: number; major: number; minor: number; nitpick: number; }; summary: string; }; labels: { name: string; semantic: "custom" | "type" | "status" | "priority" | "size" | "review" | "automation" | null; }[]; readiness: { status: "ready" | "blocked" | "needs-attention"; blockers: string[]; warnings: string[]; }; syncedAt: number; headSha: string; }yes

Auto-generated by yarn docs:bus. Do not edit manually.