mirror of
https://github.com/qodo-ai/pr-agent.git
synced 2025-07-04 12:50:38 +08:00
feat: Update PR description prompts in toml file to include semantic file types and custom labels options
This commit is contained in:
@ -1,6 +1,10 @@
|
|||||||
[pr_description_prompt]
|
[pr_description_prompt]
|
||||||
system="""You are PR-Reviewer, a language model designed to review a Git Pull Request (PR).
|
system="""You are PR-Reviewer, a language model designed to review a Git Pull Request (PR).
|
||||||
Your task is to provide a full description for the PR content - title, type, description, and main files walkthrough.
|
{%- if enable_custom_labels %}
|
||||||
|
Your task is to provide a full description for the PR content - files walkthrough, title, type, description and labels.
|
||||||
|
{%- else %}
|
||||||
|
Your task is to provide a full description for the PR content - files walkthrough, title, type, and description.
|
||||||
|
{%- endif %}
|
||||||
- Focus on the new PR code (lines starting with '+').
|
- Focus on the new PR code (lines starting with '+').
|
||||||
- Keep in mind that the 'Previous title', 'Previous description' and 'Commit messages' sections may be partial, simplistic, non-informative or out of date. Hence, compare them to the PR diff code, and use them only as a reference.
|
- Keep in mind that the 'Previous title', 'Previous description' and 'Commit messages' sections may be partial, simplistic, non-informative or out of date. Hence, compare them to the PR diff code, and use them only as a reference.
|
||||||
- The generated title and description should prioritize the most significant changes.
|
- The generated title and description should prioritize the most significant changes.
|
||||||
@ -46,24 +50,31 @@ Class FileDescription(BaseModel):
|
|||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|
||||||
Class PRDescription(BaseModel):
|
Class PRDescription(BaseModel):
|
||||||
|
{%- if enable_semantic_files_types %}
|
||||||
|
pr_files[List[FileDescription]] = Field(max_items=15, description="a list of the files in the PR, and their changes summary.")
|
||||||
|
{%- endif %}
|
||||||
title: str = Field(description="an informative title for the PR, describing its main theme")
|
title: str = Field(description="an informative title for the PR, describing its main theme")
|
||||||
type: List[PRType] = Field(description="one or more types that describe the PR type. Return the label value, not the name.")
|
type: List[PRType] = Field(description="one or more types that describe the PR type. Return the label value, not the name.")
|
||||||
description: str = Field(description="an informative and concise description of the PR. {%- if use_bullet_points %} Use bullet points.{% endif %}")
|
description: str = Field(description="an informative and concise description of the PR. {%- if use_bullet_points %} Use bullet points.{% endif %}")
|
||||||
{%- if enable_custom_labels %}
|
{%- if enable_custom_labels %}
|
||||||
labels: List[Label] = Field(min_items=0, description="choose the relevant custom labels that describe the PR content, and return their keys. Use the value field of the Label object to better understand the label meaning.")
|
labels: List[Label] = Field(min_items=0, description="choose the relevant custom labels that describe the PR content, and return their keys. Use the value field of the Label object to better understand the label meaning.")
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
{%- if enable_file_walkthrough %}
|
|
||||||
main_files_walkthrough: List[FileWalkthrough] = Field(max_items=10)
|
|
||||||
{%- endif %}
|
|
||||||
{%- if enable_semantic_files_types %}
|
|
||||||
pr_files[List[FileDescription]] = Field(max_items=15")
|
|
||||||
{%- endif %}
|
|
||||||
=====
|
=====
|
||||||
|
|
||||||
|
|
||||||
Example output:
|
Example output:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
|
{%- if enable_semantic_files_types %}
|
||||||
|
pr_files:
|
||||||
|
- filename: |
|
||||||
|
...
|
||||||
|
changes_summary: |
|
||||||
|
...
|
||||||
|
label: |
|
||||||
|
...
|
||||||
|
...
|
||||||
|
{%- endif %}
|
||||||
title: |-
|
title: |-
|
||||||
...
|
...
|
||||||
type:
|
type:
|
||||||
@ -78,21 +89,6 @@ labels:
|
|||||||
{%- endif %}
|
{%- endif %}
|
||||||
description: |-
|
description: |-
|
||||||
...
|
...
|
||||||
{%- if enable_file_walkthrough %}
|
|
||||||
main_files_walkthrough:
|
|
||||||
- ...
|
|
||||||
- ...
|
|
||||||
{%- endif %}
|
|
||||||
{%- if enable_semantic_files_types %}
|
|
||||||
pr_files:
|
|
||||||
- filename: |
|
|
||||||
...
|
|
||||||
changes_summary: |
|
|
||||||
...
|
|
||||||
label: |
|
|
||||||
...
|
|
||||||
...
|
|
||||||
{%- endif %}
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Answer should be a valid YAML, and nothing else. Each YAML output MUST be after a newline, with proper indent, and block scalar indicator ('|-')
|
Answer should be a valid YAML, and nothing else. Each YAML output MUST be after a newline, with proper indent, and block scalar indicator ('|-')
|
||||||
|
Reference in New Issue
Block a user