Skip to content

Commit 1acf945

Browse files
committed
IOS-5283 Update release flows and artifacts generation
1 parent a45e345 commit 1acf945

File tree

3 files changed

+166
-181
lines changed

3 files changed

+166
-181
lines changed

.claude/commands/impact_linear.md

Lines changed: 42 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,41 @@ For each project/epic, find and analyze ALL sub-tasks:
7474
- Note platform-specific variations
7575
- **Link to cross-platform coordination issues**
7676

77-
### Step 5: Create Comprehensive Context Summary with Full References
77+
### Step 5: Extract Linear Issue IDs for Changelog
78+
**CRITICAL**: For changelog generation, we need Linear ISSUE IDs (IOS-XXXX format), not project hash IDs.
79+
80+
### ID Format Distinction
81+
1. **Project IDs** (hash format like `9f4625be498e`):
82+
- Used internally by Linear for project URLs
83+
- Good for reference and URLs
84+
- **DO NOT use these in changelogs**
85+
86+
2. **Issue IDs** (format like `IOS-4913`, `IOS-5149`):
87+
- Human-readable task/story identifiers
88+
- Found in git commit messages
89+
- Found in sub-tasks of projects
90+
- **USE THESE in changelogs and impact reports**
91+
92+
### How to Extract Issue IDs
93+
For each project in the view:
94+
1. **Check sub-tasks** - Each sub-task has an issue ID (IOS-XXXX)
95+
2. **Look at project description** - Often lists related issue IDs
96+
3. **Review linked PRs** - GitHub PRs reference issue IDs
97+
4. **Note implementation issues** - Main work is done in issue tasks, not project containers
98+
99+
### Issue ID Mapping Example
100+
```
101+
Project: "Chat (Public Release)" (9f4625be498e)
102+
└── Associated Issue IDs:
103+
├── IOS-4913: Chat system implementation
104+
├── IOS-4915: Sharing extension with chat support
105+
├── IOS-5033: Chat space creation
106+
└── IOS-5200: Remove chat editor limits
107+
```
108+
109+
**For changelog**: Use "Chat Spaces (IOS-4913)" NOT "Chat Spaces (9f4625be498e)"
110+
111+
## Step 6: Create Comprehensive Context Summary with Full References
78112
**CRITICAL: Always save the analysis as a file immediately after completion**
79113

80114
## Output Format
@@ -117,22 +151,23 @@ Release [NUMBER] - [URL]
117151
## Major Feature Categories
118152
119153
### [Category 1: e.g., Chat & Communication]
120-
1. **[Project/Epic Name]** ([ID])
154+
1. **[Project/Epic Name]** (Project ID: [project-hash-id])
121155
- **Linear URL**: [Full URL]
122156
- **Status**: [Status]
123-
- **Priority**: [Priority]
157+
- **Priority**: [Priority]
124158
- **Description**: [Brief description]
159+
- **Implementation Issue IDs**: [IOS-XXXX, IOS-YYYY] (for changelog use)
125160
- **Key Features**:
126-
- [Feature 1] ([Sub-task ID]) - [Status] - [URL]
127-
- [Feature 2] ([Sub-task ID]) - [Status] - [URL]
161+
- [Feature 1] (IOS-XXXX) - [Status] - [URL]
162+
- [Feature 2] (IOS-YYYY) - [Status] - [URL]
128163
- **Related Links**:
129-
- PR: [GitHub PR URL]
164+
- PR: [GitHub PR URL] (mentions IOS-XXXX)
130165
- Design: [Figma URL]
131166
- Docs: [Documentation URL]
132167
- **Technical Notes**: [Implementation details]
133168
- **Risk Level**: [High/Medium/Low]
134169
- **Testing Focus**: [Specific areas]
135-
- **Related Issues**:
170+
- **Related Issues**:
136171
- Blocks: [Issue ID] - [URL]
137172
- Related to: [Issue ID] - [URL]
138173

.claude/commands/impact_report.md

Lines changed: 118 additions & 174 deletions
Original file line numberDiff line numberDiff line change
@@ -172,174 +172,118 @@ git checkout [commit_hash]
172172
```
173173
```
174174
175-
## Output 2: Comprehensive Changelog for Writers
175+
## Output 2: Clean Changelog for Product Communication
176176
177177
```markdown
178-
# iOS Release [NUMBER] - Comprehensive Changelog
179-
180-
## Release Overview
181-
- **Version**: [X.Y.Z]
182-
- **Release Date**: [TARGET DATE]
183-
- **Linear Initiative**: [Name] ([ID])
184-
- **Theme**: [Main theme or focus of this release]
185-
- **Total Features**: [COUNT]
186-
- **Total Improvements**: [COUNT]
187-
- **Total Bug Fixes**: [COUNT]
188-
189-
## Linear Projects & Features Matrix
190-
191-
### [Linear Project Name 1] ([PROJECT_ID])
192-
**Project Description**: [From Linear]
193-
**Status**: [Completed/Partial]
194-
**Stories Included**: [COUNT]
195-
196-
#### Features Delivered:
197-
1. **[Feature Name]** ([LINEAR_STORY_ID])
198-
- **User Story**: [Original user story from Linear]
199-
- **Technical Implementation**: [How it was built]
200-
- **User-Facing Impact**: [What users will experience]
201-
- **Business Value**: [Why this matters]
202-
203-
2. **[Feature Name]** ([LINEAR_STORY_ID])
204-
[Continue structure]
205-
206-
### [Linear Project Name 2] ([PROJECT_ID])
207-
[Continue structure]
208-
209-
## Detailed Change Categories
210-
211-
### 🆕 NEW FEATURES
212-
213-
#### [Feature Category 1]
214-
215-
##### [Feature Name]
216-
- **Linear Reference**: Project [PROJECT_ID], Story [STORY_ID]
217-
- **Description for Writers**:
218-
- What it does: [Detailed explanation]
219-
- How users access it: [Entry points, menu locations]
220-
- Key benefits: [User value propositions]
221-
- **Technical Context**:
222-
- Components added: [List]
223-
- Integration points: [APIs, services]
224-
- Data flow: [Brief explanation]
225-
- **Visual/UX Changes**:
226-
- New screens: [List with purpose]
227-
- New UI elements: [Buttons, controls, etc.]
228-
- User journey: [Step-by-step flow]
229-
- **Related Features**: [Other features this connects with]
230-
- **Limitations**: [Any constraints writers should know]
231-
232-
##### [Feature Name 2]
233-
[Continue structure]
234-
235-
### 🔄 IMPROVEMENTS & ENHANCEMENTS
236-
237-
#### [Improvement Category 1]
238-
239-
##### [Improvement Name]
240-
- **Linear Reference**: Story [STORY_ID]
241-
- **Previous Behavior**: [How it worked before]
242-
- **New Behavior**: [How it works now]
243-
- **Reason for Change**: [User feedback, performance, etc.]
244-
- **Technical Changes**:
245-
- Code refactored: [Areas]
246-
- Performance gains: [Metrics if available]
247-
- **User Impact**: [What users will notice]
248-
249-
### 🐛 BUG FIXES
250-
251-
#### [Bug Category 1]
252-
253-
##### [Bug Description]
254-
- **Linear Reference**: Bug [BUG_ID]
255-
- **Issue**: [What was broken]
256-
- **User Impact**: [How it affected users]
257-
- **Root Cause**: [Technical explanation]
258-
- **Solution**: [How it was fixed]
259-
- **Verification**: [How to confirm it's fixed]
260-
261-
### 🏗️ TECHNICAL FOUNDATION
262-
263-
#### Architecture Changes
264-
- **What Changed**: [Description]
265-
- **Why It Matters**: [Future benefits, performance, etc.]
266-
- **User Impact**: [Immediate or future benefits]
267-
268-
#### API Updates
269-
- **New Endpoints**:
270-
- [Endpoint]: [Purpose and data handled]
271-
- **Modified Endpoints**:
272-
- [Endpoint]: [Changes and reasons]
273-
274-
#### Data Model Changes
275-
- **New Models**: [Purpose and relationships]
276-
- **Modified Models**: [Changes and migration notes]
277-
278-
### 📊 METRICS & PERFORMANCE
279-
280-
#### Performance Improvements
281-
- **Area**: [Feature/Screen]
282-
- Previous: [Metric]
283-
- Current: [Metric]
284-
- User Benefit: [Faster loading, smoother experience]
285-
286-
#### Size & Efficiency
287-
- **App Size Change**: [+/- MB]
288-
- **Memory Usage**: [Improvements]
289-
- **Battery Impact**: [Changes]
290-
291-
## DEPENDENCIES & REQUIREMENTS
292-
293-
### iOS Version Support
294-
- **Minimum iOS**: [Version]
295-
- **Optimal iOS**: [Version]
296-
- **New iOS Features Used**: [List]
297-
298-
### Device Compatibility
299-
- **Newly Supported**: [Devices]
300-
- **Enhanced Support**: [Devices with special features]
301-
- **Known Limitations**: [Device-specific issues]
302-
303-
### Third-Party Services
304-
- **New Integrations**: [Service and purpose]
305-
- **Updated SDKs**: [Version changes]
306-
307-
## WRITER'S GUIDE
308-
309-
### Key Messages for This Release
310-
1. **Primary Theme**: [Main story to tell]
311-
2. **Secondary Themes**: [Supporting narratives]
312-
3. **User Benefits to Highlight**: [Top 3-5]
313-
314-
### Feature Groupings for Storytelling
315-
- **Productivity Features**: [List]
316-
- **User Experience Improvements**: [List]
317-
- **Performance & Reliability**: [List]
318-
319-
### Technical Terms Glossary
320-
- **[Term]**: [User-friendly explanation]
321-
- **[Term]**: [User-friendly explanation]
322-
323-
### Screenshots & Assets Needed
324-
1. **[Feature]**: [What to capture]
325-
2. **[Feature]**: [Key screens or flows]
326-
327-
### Competitive Advantages
328-
- **[Feature]**: [How it compares to competitors]
329-
- **[Improvement]**: [Market differentiation]
178+
# iOS Release [NUMBER] - What's New
330179
331-
## APPENDIX: Raw Change List
332-
333-
### Complete Commit Summary
334-
[Organized list of all commits with Linear references]
335-
336-
### File Change Statistics
337-
- Total files changed: [COUNT]
338-
- Lines added: [COUNT]
339-
- Lines removed: [COUNT]
340-
- Top changed components: [List]
180+
**Version**: [X.Y.Z]
181+
**Theme**: [One-line description of the release focus]
182+
183+
## 🆕 New Features
184+
185+
### 💬 Chat & Collaboration
186+
187+
#### [Chat-related Feature Name] ([LINEAR_ID])
188+
**What it does**: [Simple, user-focused explanation in 1-2 sentences]
189+
190+
**How to use it**: [Brief steps or where to find it]
191+
192+
**Why we built it**: [User benefit or problem it solves]
193+
194+
### 📱 Mobile Experience
195+
196+
#### [Mobile Feature Name] ([LINEAR_ID])
197+
[Continue same simple structure]
198+
199+
### [Other category if needed]
200+
201+
#### [Feature Name] ([LINEAR_ID])
202+
[Continue same simple structure]
203+
204+
## 💫 Improvements
205+
206+
### 💬 Chat & Collaboration
207+
208+
#### [Chat Improvement Name] ([LINEAR_ID])
209+
**What changed**: [Brief before/after comparison]
210+
211+
**Why we improved it**: [User feedback or benefit]
212+
213+
### 📱 Mobile Experience
214+
215+
#### [Mobile Improvement Name] ([LINEAR_ID])
216+
[Continue same structure]
217+
218+
### 🏠 Space Management
219+
220+
#### [Space Improvement Name] ([LINEAR_ID])
221+
[Continue same structure]
222+
223+
## 🐛 Bug Fixes
224+
225+
### General Fixes
226+
- **[Bug area]** ([LINEAR_ID]): [What was broken] → [Now it works properly]
227+
- **[Bug area 2]** ([LINEAR_ID]): [What was broken] → [Now it works properly]
228+
- **[Bug area 3]** ([LINEAR_ID]): [What was broken] → [Now it works properly]
229+
230+
## 📱 Compatibility
231+
- **iOS Support**: [Minimum version required]
232+
- **What's needed**: [Any special requirements in simple terms]
233+
234+
---
235+
236+
*Questions? Contact [support channel]*
341237
```
342238

239+
## Instructions for Clean Changelog Generation
240+
241+
When creating the changelog from Linear and Git data:
242+
243+
1. **Focus on USER VALUE, not technical details**
244+
- NO component names, file names, or implementation details
245+
- NO technical jargon unless absolutely necessary
246+
- NO repetition of the same information
247+
248+
2. **Include LINEAR IDs for reference**
249+
- Add Linear story/bug IDs in parentheses after feature names
250+
- Use format: (IOS-XXXX) or (PROJECT-NAME) as appropriate
251+
- Keep them subtle - they're for reference, not the main focus
252+
253+
3. **Group by THEMES when logical**
254+
- Use emoji + category headers to group related features/improvements
255+
- Common categories:
256+
- 💬 Chat & Collaboration
257+
- 📱 Mobile Experience
258+
- 🏠 Space Management
259+
- 🔐 Security & Privacy
260+
- ⚡ Performance
261+
- If a major new feature has related improvements, group them together
262+
- Don't force grouping if items don't naturally fit
263+
264+
4. **Keep it CONCISE**
265+
- Each feature/improvement gets 3-5 lines maximum
266+
- Bug fixes are one-liners
267+
- No lengthy explanations
268+
269+
5. **Structure Requirements**:
270+
- **New Features**: Only truly NEW functionality (not improvements to existing features)
271+
- **Improvements**: Changes to existing features that users will notice
272+
- **Bug Fixes**: Simple list of what was broken and now works
273+
274+
6. **Language Guidelines**:
275+
- Write as if explaining to a non-technical friend
276+
- Use active voice ("You can now..." instead of "Users are able to...")
277+
- Focus on benefits, not features ("Share files instantly" not "File sharing system implemented")
278+
279+
7. **What to EXCLUDE**:
280+
- Technical architecture changes (unless they directly impact users)
281+
- Internal improvements that users won't notice
282+
- Feature flags and configuration changes
283+
- Code statistics and commit counts
284+
- API details
285+
- Performance metrics (unless dramatic and user-facing)
286+
343287
## Output 3: Team Celebration Slack Message
344288

345289
Generate a concise, morale-boosting message for team communication (Slack, etc.)
@@ -374,19 +318,19 @@ Insane Numbers of Release [NUMBER] :exploding_head:
374318
2. Cross-reference Linear stories with Git changes
375319
3. Calculate impact scores for each change
376320
4. Generate comprehensive testing recommendations
377-
5. Create detailed changelog with full context for writers
321+
5. Create clean changelog focused on user value (not technical details)
378322
6. Create team celebration message
379323
7. Save outputs:
380324
- `impact_analysis_release_[NUMBER].md`
381-
- `comprehensive_changelog_[NUMBER].md`
325+
- `clean_changelog_release_[NUMBER].md`
382326
- `team_celebration_release_[NUMBER].txt`
383327

384-
## Tips for Creating Writer-Friendly Changelog
385-
- Always provide the "why" behind each change
386-
- Connect technical changes to user benefits
387-
- Include Linear project context to show feature relationships
388-
- Explain technical terms in user-friendly language
389-
- Highlight business value and competitive advantages
390-
- Group related changes for better storytelling
391-
- Include enough detail for writers to craft compelling narratives
392-
- Note any limitations or known issues transparently
328+
## Tips for Creating Clean Changelog
329+
- Focus on WHAT users can do, not HOW it was built
330+
- Use simple, everyday language - no technical jargon
331+
- Keep descriptions brief (3-5 lines per feature maximum)
332+
- Group similar changes together to avoid repetition
333+
- Lead with the user benefit, not the feature name
334+
- For bugs, just say what was broken and that it now works
335+
- Skip any technical details unless they directly affect users
336+
- Write as if explaining to a friend who uses the app

0 commit comments

Comments
 (0)