Class: Aidp::Watch::Reviewers::BaseReviewer
- Inherits:
-
Object
- Object
- Aidp::Watch::Reviewers::BaseReviewer
- Defined in:
- lib/aidp/watch/reviewers/base_reviewer.rb
Overview
Base class for all PR reviewers
Direct Known Subclasses
Instance Attribute Summary collapse
-
#focus_areas ⇒ Object
readonly
Returns the value of attribute focus_areas.
-
#persona_name ⇒ Object
readonly
Returns the value of attribute persona_name.
-
#provider_name ⇒ Object
readonly
Returns the value of attribute provider_name.
Instance Method Summary collapse
-
#initialize(provider_name: nil) ⇒ BaseReviewer
constructor
A new instance of BaseReviewer.
-
#review(pr_data:, files:, diff:) ⇒ Hash
Review the PR and return findings.
Constructor Details
#initialize(provider_name: nil) ⇒ BaseReviewer
Returns a new instance of BaseReviewer.
13 14 15 16 17 |
# File 'lib/aidp/watch/reviewers/base_reviewer.rb', line 13 def initialize(provider_name: nil) @provider_name = provider_name @persona_name = self.class::PERSONA_NAME @focus_areas = self.class::FOCUS_AREAS end |
Instance Attribute Details
#focus_areas ⇒ Object (readonly)
Returns the value of attribute focus_areas.
11 12 13 |
# File 'lib/aidp/watch/reviewers/base_reviewer.rb', line 11 def focus_areas @focus_areas end |
#persona_name ⇒ Object (readonly)
Returns the value of attribute persona_name.
11 12 13 |
# File 'lib/aidp/watch/reviewers/base_reviewer.rb', line 11 def persona_name @persona_name end |
#provider_name ⇒ Object (readonly)
Returns the value of attribute provider_name.
11 12 13 |
# File 'lib/aidp/watch/reviewers/base_reviewer.rb', line 11 def provider_name @provider_name end |
Instance Method Details
#review(pr_data:, files:, diff:) ⇒ Hash
Review the PR and return findings
37 38 39 |
# File 'lib/aidp/watch/reviewers/base_reviewer.rb', line 37 def review(pr_data:, files:, diff:) raise NotImplementedError, "Subclasses must implement #review" end |