scorer
scorer
¶
AI-powered code review scorer for Marianne.
Provides automated quality assessment of code changes after batch execution. The reviewer analyzes git diffs and produces a quality score (0-100) with detailed feedback on issues and suggestions.
Score Components: - Code Quality (30%): Complexity, duplication, pattern adherence - Test Coverage (25%): New code tested, edge cases - Security (25%): No secrets, validation, error handling - Documentation (20%): Public API docs, complex logic explained
Classes¶
AIReviewResult
dataclass
¶
GitDiffProvider
¶
Gets diffs using git commands.
Initialize with optional since commit.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
since_commit
|
str | None
|
Commit hash to diff from. If None, uses staged + unstaged. |
None
|
Source code in src/marianne/review/scorer.py
Functions¶
get_diff
¶
Get git diff for the workspace.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
workspace
|
Path
|
Directory to get diff from. |
required |
Returns:
| Type | Description |
|---|---|
str
|
Git diff as string, or empty string if not a git repo. |
Source code in src/marianne/review/scorer.py
AIReviewer
¶
Performs AI-powered code review using a backend.
Uses the same backend as Marianne execution to send the diff for review and parse the scoring response.
Initialize reviewer.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
backend
|
Backend
|
Execution backend for AI calls. |
required |
config
|
AIReviewConfig
|
AI review configuration. |
required |
diff_provider
|
GitDiffProvider | None
|
Provider for git diffs. Defaults to GitDiffProvider. |
None
|
Source code in src/marianne/review/scorer.py
Functions¶
review
async
¶
Perform AI review on workspace changes.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
workspace
|
Path
|
Directory to review. |
required |
Returns:
| Type | Description |
|---|---|
AIReviewResult
|
AIReviewResult with score and feedback. |
Source code in src/marianne/review/scorer.py
evaluate_result
¶
Evaluate review result against config thresholds.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
AIReviewResult
|
Review result to evaluate. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
Tuple of (passed, message). |
str
|
passed is True if score >= min_score. |