|
49 | 49 | </steps> |
50 | 50 | </phase> |
51 | 51 | <phase name="process_each_pr"> |
52 | | - <description>For each PR, follow a micro-workflow to gather, analyze, and write to a temporary file.</description> |
53 | | - <micro_workflow> |
| 52 | + <description>Process PRs individually, investigating each one thoroughly and storing findings in a temporary file for later compilation.</description> |
| 53 | + <iterative_workflow> |
| 54 | + <overview> |
| 55 | + For each PR in the list, execute a complete investigation workflow and immediately |
| 56 | + store the findings in a temporary markdown file (e.g., temp_pr_analysis.md). |
| 57 | + This allows for incremental building of release note data. |
| 58 | + </overview> |
| 59 | + |
| 60 | + <per_pr_steps> |
| 61 | + <step number="1"> |
| 62 | + <action>Gather comprehensive PR details</action> |
| 63 | + <tools> |
| 64 | + <tool>github.get_pull_request - Title, author, description</tool> |
| 65 | + <tool>github.get_pull_request_files - Changed files (optional)</tool> |
| 66 | + <tool>github.get_pull_request_diff - Code changes (if needed for clarity)</tool> |
| 67 | + </tools> |
| 68 | + <details>Extract PR title, author username, and description for analysis</details> |
| 69 | + </step> |
| 70 | + |
| 71 | + <step number="2"> |
| 72 | + <action>Extract and gather linked issue details</action> |
| 73 | + <process> |
| 74 | + <substep>Parse PR description for issue references (Fixes #123, Closes #456, etc.)</substep> |
| 75 | + <substep>For each found issue number, use github.get_issue to gather details</substep> |
| 76 | + <substep>Extract issue reporter username and title for context</substep> |
| 77 | + </process> |
| 78 | + <tools> |
| 79 | + <tool>github.get_issue - For each linked issue found</tool> |
| 80 | + </tools> |
| 81 | + </step> |
| 82 | + |
| 83 | + <step number="3"> |
| 84 | + <action>Analyze and categorize the change</action> |
| 85 | + <analysis_framework> |
| 86 | + <question>What changed? (core functionality/feature affected)</question> |
| 87 | + <question>Why did it change? (problem being solved)</question> |
| 88 | + <question>How does this impact users? (benefits in plain language)</question> |
| 89 | + <question>What category? (bug fix, feature, improvement, etc.)</question> |
| 90 | + </analysis_framework> |
| 91 | + </step> |
| 92 | + |
| 93 | + <step number="4"> |
| 94 | + <action>Write findings to temporary file</action> |
| 95 | + <process> |
| 96 | + <substep>Create or append to temp_pr_analysis.md</substep> |
| 97 | + <substep>Include structured data for this PR</substep> |
| 98 | + <substep>Store all contributor information</substep> |
| 99 | + <substep>Include categorization and user impact analysis</substep> |
| 100 | + </process> |
| 101 | + <file_format> |
| 102 | + Use a consistent markdown format that can be easily parsed later |
| 103 | + for generating the final release notes |
| 104 | + </file_format> |
| 105 | + </step> |
| 106 | + </per_pr_steps> |
| 107 | + |
| 108 | + <completion_per_pr> |
| 109 | + After each PR analysis is complete and written to the temporary file, |
| 110 | + move on to the next PR. This ensures thorough investigation of each |
| 111 | + change before proceeding. |
| 112 | + </completion_per_pr> |
| 113 | + </iterative_workflow> |
| 114 | + </phase> |
| 115 | + <phase name="compile_final_release_notes"> |
| 116 | + <description>Read the temporary analysis file and compile all findings into the final release notes format</description> |
| 117 | + <steps> |
54 | 118 | <step number="1"> |
55 | | - <action>Gather comprehensive PR details</action> |
56 | | - <tools> |
57 | | - <tool>github.get_pull_request - Title, author, description</tool> |
58 | | - <tool>github.get_pull_request_files - Changed files</tool> |
59 | | - <tool>github.get_pull_request_diff - Code changes</tool> |
60 | | - <tool>github.get_pull_request_comments - Additional context if needed</tool> |
61 | | - </tools> |
| 119 | + <action>Read temporary analysis file</action> |
| 120 | + <details> |
| 121 | + Read the complete temp_pr_analysis.md file that contains all individual PR investigations |
| 122 | + </details> |
62 | 123 | </step> |
63 | 124 | <step number="2"> |
64 | | - <action>Gather related issue details</action> |
65 | | - <tools> |
66 | | - <tool>github.get_issue</tool> |
67 | | - </tools> |
68 | | - <details>From the PR description, extract the issue number and retrieve details.</details> |
| 125 | + <action>Group and organize findings</action> |
| 126 | + <details> |
| 127 | + Group PRs by category (Bug Fixes, QOL Improvements, Provider Updates, etc.) |
| 128 | + based on the analysis stored for each PR |
| 129 | + </details> |
69 | 130 | </step> |
70 | 131 | <step number="3"> |
71 | | - <action>Append analysis to temporary file</action> |
| 132 | + <action>Format for release notes</action> |
72 | 133 | <details> |
73 | | - Analyze the gathered information for a single PR and append the summary |
74 | | - to a temporary file. This builds a comprehensive dataset incrementally. |
75 | | - </details> |
| 134 | + Transform the organized findings into the final release notes format |
| 135 | + with proper acknowledgments and user-friendly language |
| 136 | + </details> |
| 137 | + </step> |
| 138 | + <step number="4"> |
| 139 | + <action>Clean up temporary file</action> |
| 140 | + <details> |
| 141 | + Optionally remove or archive the temporary analysis file after successful completion |
| 142 | + </details> |
76 | 143 | </step> |
77 | | - </micro_workflow> |
78 | | - </phase> |
79 | | - <phase name="transform_to_user_benefits"> |
80 | | - <description>Analyze technical changes from the temporary file and convert to user-facing benefits based on the official changelog</description> |
81 | | - <steps> |
82 | | - <step>Identify what changed (core functionality/feature)</step> |
83 | | - <step>Understand why it changed (problem being solved)</step> |
84 | | - <step>Determine user impact (benefits in plain language)</step> |
85 | | - <step>Categorize changes (features, fixes, improvements)</step> |
86 | 144 | </steps> |
87 | 145 | </phase> |
88 | 146 | <phase name="generate_documentation"> |
|
0 commit comments