9595 </step >
9696
9797 <step number =" 4" >
98+ <title >Combine Multiple Versions</title >
99+ <action >When multiple versions requested, intelligently combine content</action >
100+ <combination_strategy >
101+ <substep number =" 1" >
102+ <action >Sort versions in descending order (newest first)</action >
103+ <reason >Present most recent changes first for better visibility</reason >
104+ </substep >
105+ <substep number =" 2" >
106+ <action >Extract and merge content by category</action >
107+ <categories >
108+ <category name =" major_features" >
109+ <description >Combine all major features across versions</description >
110+ <format >List under unified "## Major Features" section</format >
111+ </category >
112+ <category name =" bug_fixes" >
113+ <description >Merge all bug fixes</description >
114+ <format >Group under "## Bug Fixes" with version indicators</format >
115+ </category >
116+ <category name =" improvements" >
117+ <description >Combine QOL and other improvements</description >
118+ <format >List under "## Improvements" section</format >
119+ </category >
120+ </categories >
121+ </substep >
122+ <substep number =" 3" >
123+ <action >Add version indicators to each item</action >
124+ <format >Append (vX.Y.Z) to each bullet point</format >
125+ <example >* **File Handling**: Fixed large file errors (v3.23.15) (thanks user!)</example >
126+ </substep >
127+ <substep number =" 4" >
128+ <action >Consolidate duplicate contributors</action >
129+ <details >If same contributor appears in multiple versions, list once</details >
130+ </substep >
131+ </combination_strategy >
132+ </step >
133+
134+ <step number =" 5" >
98135 <title >Format Output</title >
99- <action >Present Discord-ready text</action >
136+ <action >Present Discord-ready text based on version count </action >
100137 <single_version_format ><
115152 ]]> </single_version_format >
116- <multiple_versions_format ><![CDATA[
153+ <multiple_versions_combined_format ><![CDATA[
154+ # Roo Code Release Notes (vX.Y.Z - vA.B.C)
155+
156+ Combined release notes for versions X.Y.Z through A.B.C.
157+
158+ ## Major Features
159+
160+ * **[Feature Name]** (vX.Y.Z): [Description without PR links]
161+ * **[Another Feature]** (vA.B.C): [Description]
162+
163+ ## Bug Fixes
164+
165+ * **[Category]**: [Fix description] (vX.Y.Z) (thanks [contributor]!)
166+ * **[Category]**: [Another fix] (vA.B.C) (thanks [contributor]!)
167+
168+ ## Improvements
169+
170+ * **[Improvement Type]**: [Description] (vX.Y.Z)
171+ * **[Another Type]**: [Description] (vA.B.C)
172+
173+ ---
174+ Full release notes:
175+ - [X.Y.Z Release Notes](https://docs.roocode.com/update-notes/vX.Y.Z)
176+ - [A.B.C Release Notes](https://docs.roocode.com/update-notes/vA.B.C)
177+ ]]> </multiple_versions_combined_format >
178+ <multiple_versions_separate_format ><
130192- [A.B.C Release Notes](https://docs.roocode.com/update-notes/vA.B.C)
131- ]]> </multiple_versions_format >
193+ ]]> </multiple_versions_separate_format >
194+ <format_selection >
195+ <rule >Use combined format when user explicitly requests "combined" or "merge"</rule >
196+ <rule >Use combined format for 2-3 closely related patch versions (e.g., 3.23.14, 3.23.15)</rule >
197+ <rule >Use separate format for many versions or major/minor releases</rule >
198+ <rule >Ask user preference if unclear</rule >
199+ </format_selection >
132200 </step >
133201
134- <step number =" 5 " >
202+ <step number =" 6 " >
135203 <title >Provide Copy Instructions</title >
136204 <action >Give user the formatted text with copy guidance</action >
137205 <completion_message >
138206 Here's the Discord-formatted release notes. You can copy and paste this directly into Discord.
139207
140208 [Include formatted text in a code block for easy copying]
141209 </completion_message >
210+ <length_warning >
211+ <condition >If output exceeds 2000 characters</condition >
212+ <action >Warn user about Discord's character limit and suggest splitting</action >
213+ </length_warning >
142214 </step >
143215 </workflow_steps >
144216
@@ -168,14 +240,27 @@ Full release notes:
168240 </workflow >
169241 </example >
170242
171- <example name =" multiple_versions " >
243+ <example name =" multiple_versions_separate " >
172244 <user_request >Generate Discord announcement for v3.23.14, v3.23.15, v3.23.16</user_request >
173245 <workflow >
174246 1. Parse versions: 3.23.14, 3.23.15, 3.23.16
175247 2. Check files: v3.23.14.mdx ✓, v3.23.15.mdx ✓, v3.23.16.mdx ✗
176248 3. Ask user how to proceed with missing v3.23.16
177249 4. Process existing versions
178- 5. Output combined Discord announcement
250+ 5. Determine format: separate sections for each version
251+ 6. Output Discord announcement with version sections
252+ </workflow >
253+ </example >
254+
255+ <example name =" multiple_versions_combined" >
256+ <user_request >Combine Discord release notes for 3.23.14 and 3.23.15</user_request >
257+ <workflow >
258+ 1. Parse versions: 3.23.14, 3.23.15
259+ 2. Check both files exist
260+ 3. Read and process both versions
261+ 4. Detect "combine" keyword - use combined format
262+ 5. Merge features, fixes, and improvements with version tags
263+ 6. Output single combined announcement
179264 </workflow >
180265 </example >
181266
@@ -188,6 +273,17 @@ Full release notes:
188273 4. Output condensed Discord format
189274 </workflow >
190275 </example >
276+
277+ <example name =" range_request_combined" >
278+ <user_request >Discord release notes for 3.23.14-3.23.16 combined</user_request >
279+ <workflow >
280+ 1. Parse range: 3.23.14 to 3.23.16
281+ 2. Find all versions in range
282+ 3. Process each version's content
283+ 4. Combine into unified sections with version indicators
284+ 5. Output merged announcement
285+ </workflow >
286+ </example >
191287 </examples >
192288
193289 <error_scenarios >
0 commit comments