# Interface IScmReviewer

Review trait — PR review capabilities.

Implemented by platforms supporting code review workflows. Consumers declare this trait when they need PR file diffs or review posting.

interface IScmReviewer {
getPullRequestDetail(
prNumber: number,
): Promise<Result<ScmPullRequestDetail, ScmError>>;
createReview(
prNumber: number,
body: string,
decision: ScmReviewDecision,
): Promise<Result<void, ScmError>>;
getIssueDetail(
issueNumber: number,
): Promise<Result<ScmIssueDetail, ScmError>>;
listCommentDetails(
issueNumber: number,
): Promise<Result<readonly ScmCommentDetail[], ScmError>>;
}

#### Implemented by

- GitHubReviewer

- Defined in packages/nexus-agents/src/scm/types.ts:221

##### Index

### Methods

getPullRequestDetail
createReview
getIssueDetail
listCommentDetails

## Methods

### getPullRequestDetail

- getPullRequestDetail(
  prNumber: number,
  ): Promise<Result<ScmPullRequestDetail, ScmError>>

  Fetch PR with full file diffs and stats.

  #### Parameters

  - prNumber: number

  #### Returns Promise<Result<ScmPullRequestDetail, ScmError>>

  - Defined in packages/nexus-agents/src/scm/types.ts:223

### createReview

- createReview(
  prNumber: number,
  body: string,
  decision: ScmReviewDecision,
  ): Promise<Result<void, ScmError>>

  Post a review on a pull request.

  #### Parameters

  - prNumber: number
  - body: string
  - decision: ScmReviewDecision

  #### Returns Promise<Result<void, ScmError>>

  - Defined in packages/nexus-agents/src/scm/types.ts:226

### getIssueDetail

- getIssueDetail(issueNumber: number): Promise<Result<ScmIssueDetail, ScmError>>

  Fetch issue with author association and state.

  #### Parameters

  - issueNumber: number

  #### Returns Promise<Result<ScmIssueDetail, ScmError>>

  - Defined in packages/nexus-agents/src/scm/types.ts:233

### listCommentDetails

- listCommentDetails(
  issueNumber: number,
  ): Promise<Result<readonly ScmCommentDetail[], ScmError>>

  List comments with author associations.

  #### Parameters

  - issueNumber: number

  #### Returns Promise<Result<readonly ScmCommentDetail[], ScmError>>

  - Defined in packages/nexus-agents/src/scm/types.ts:236