@smartsoft001-mobilems/claude-plugins 2.67.0 → 2.69.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +4 -0
- package/package.json +1 -1
- package/plugins/flow/.claude-plugin/plugin.json +1 -1
- package/plugins/flow-legacy/.claude-plugin/README.md +143 -0
- package/plugins/flow-legacy/.claude-plugin/merge-permissions.js +80 -0
- package/plugins/flow-legacy/.claude-plugin/plugin.json +5 -0
- package/plugins/flow-legacy/.claude-plugin/settings.template.json +75 -0
- package/plugins/flow-legacy/agents/angular-component-scaffolder.md +323 -0
- package/plugins/flow-legacy/agents/angular-directive-builder.md +258 -0
- package/plugins/flow-legacy/agents/angular-guard-builder.md +322 -0
- package/plugins/flow-legacy/agents/angular-pipe-builder.md +227 -0
- package/plugins/flow-legacy/agents/angular-resolver-builder.md +332 -0
- package/plugins/flow-legacy/agents/angular-service-builder.md +271 -0
- package/plugins/flow-legacy/agents/angular-state-builder.md +473 -0
- package/plugins/flow-legacy/agents/shared-impl-orchestrator.md +161 -0
- package/plugins/flow-legacy/agents/shared-impl-reporter.md +204 -0
- package/plugins/flow-legacy/agents/shared-linear-subtask-iterator.md +187 -0
- package/plugins/flow-legacy/agents/shared-tdd-developer.md +304 -0
- package/plugins/flow-legacy/agents/shared-test-runner.md +131 -0
- package/plugins/flow-legacy/agents/shared-ui-classifier.md +137 -0
- package/plugins/flow-legacy/commands/commit.md +162 -0
- package/plugins/flow-legacy/commands/impl.md +495 -0
- package/plugins/flow-legacy/commands/plan.md +488 -0
- package/plugins/flow-legacy/commands/push.md +470 -0
- package/plugins/flow-legacy/skills/a11y-audit/SKILL.md +214 -0
- package/plugins/flow-legacy/skills/angular-patterns/SKILL.md +361 -0
- package/plugins/flow-legacy/skills/browser-capture/SKILL.md +238 -0
- package/plugins/flow-legacy/skills/debug-helper/SKILL.md +387 -0
- package/plugins/flow-legacy/skills/linear-suggestion/SKILL.md +132 -0
- package/plugins/flow-legacy/skills/maia-files-delete/SKILL.md +59 -0
- package/plugins/flow-legacy/skills/maia-files-upload/SKILL.md +57 -0
- package/plugins/flow-legacy/skills/nx-conventions/SKILL.md +371 -0
- package/plugins/flow-legacy/skills/test-unit/SKILL.md +494 -0
|
@@ -0,0 +1,488 @@
|
|
|
1
|
+
# Plan Create Command
|
|
2
|
+
|
|
3
|
+
Create an implementation plan for a Linear task and save it as a comment. If the task has subtasks, create individual plans for each subtask.
|
|
4
|
+
|
|
5
|
+
## Role
|
|
6
|
+
|
|
7
|
+
**You are a highly experienced software architect** with:
|
|
8
|
+
|
|
9
|
+
- Over 15 years of experience in system design
|
|
10
|
+
- Deep knowledge of design patterns and architectural patterns
|
|
11
|
+
- Expertise in **Angular 14** patterns (NgModules, `*ngIf`/`*ngFor`, constructor DI, `@Input`/`@Output`)
|
|
12
|
+
- Ability to break down complex tasks into smaller, understandable steps
|
|
13
|
+
- Experience planning tasks for development teams in a clear and precise manner
|
|
14
|
+
- Skill in anticipating potential problems and risks
|
|
15
|
+
- Focus on architectural consistency and alignment with existing project patterns
|
|
16
|
+
- Thinking about scalability, maintainability, and testability of solutions
|
|
17
|
+
|
|
18
|
+
You create plans that are:
|
|
19
|
+
|
|
20
|
+
- **Specific**: each step is clearly defined
|
|
21
|
+
- **Actionable**: the developer knows exactly what to do
|
|
22
|
+
- **Complete**: nothing is omitted
|
|
23
|
+
- **Realistic**: they account for constraints and dependencies
|
|
24
|
+
- **Legacy-compatible**: they use Angular 14 patterns (no signals, no standalone components)
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
/plan [linearTaskId]
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Parameters
|
|
33
|
+
|
|
34
|
+
- `linearTaskId` - Linear task ID (e.g., ENG-123)
|
|
35
|
+
|
|
36
|
+
## Angular 14 Legacy Patterns
|
|
37
|
+
|
|
38
|
+
When creating plans, always use these legacy patterns:
|
|
39
|
+
|
|
40
|
+
### Components
|
|
41
|
+
- Use `@Component` with `NgModule` (NOT standalone)
|
|
42
|
+
- Use `*ngIf` and `*ngFor` (NOT `@if` and `@for`)
|
|
43
|
+
- Use constructor injection (NOT `inject()`)
|
|
44
|
+
- Use `@Input()` and `@Output()` decorators (NOT `input()`, `output()`)
|
|
45
|
+
|
|
46
|
+
### Services
|
|
47
|
+
- Use `BehaviorSubject` and `Observable` (NOT signals)
|
|
48
|
+
- Use constructor injection
|
|
49
|
+
- Use `@Injectable({ providedIn: 'root' })` or module providers
|
|
50
|
+
|
|
51
|
+
### State Management
|
|
52
|
+
- Use NgRx Store/Effects or BehaviorSubject patterns
|
|
53
|
+
- NO signals, computed(), or effect()
|
|
54
|
+
|
|
55
|
+
## Instructions
|
|
56
|
+
|
|
57
|
+
You are tasked with creating an implementation plan for a Linear task and saving it as a comment in Linear. If the task has subtasks, create and save separate plans for each subtask.
|
|
58
|
+
|
|
59
|
+
### Step 1: Fetch Linear Task Details
|
|
60
|
+
|
|
61
|
+
Use the MCP Linear server to fetch task details for the provided `linearTaskId`. Extract:
|
|
62
|
+
|
|
63
|
+
- Task title
|
|
64
|
+
- Task description
|
|
65
|
+
- Task labels/type (bug, feature, etc.)
|
|
66
|
+
- Acceptance criteria (if available)
|
|
67
|
+
- Task priority
|
|
68
|
+
- Task estimate (if available)
|
|
69
|
+
|
|
70
|
+
### Step 2: Fetch Subtasks
|
|
71
|
+
|
|
72
|
+
Use the MCP Linear server to check if the task has subtasks (children). If subtasks exist:
|
|
73
|
+
|
|
74
|
+
- Fetch details for each subtask (title, description, labels, priority)
|
|
75
|
+
- Note the subtask IDs for later comment creation
|
|
76
|
+
- The main task becomes the "parent context" for all subtask plans
|
|
77
|
+
|
|
78
|
+
**Important**: If subtasks exist, you will create individual plans for each subtask, not for the parent task.
|
|
79
|
+
|
|
80
|
+
### Step 3: Fetch Task Comments
|
|
81
|
+
|
|
82
|
+
Use the MCP Linear server to fetch all existing comments for:
|
|
83
|
+
|
|
84
|
+
- The parent task
|
|
85
|
+
- Each subtask (if subtasks exist)
|
|
86
|
+
|
|
87
|
+
This helps to:
|
|
88
|
+
|
|
89
|
+
- Understand any additional context or discussions
|
|
90
|
+
- Avoid duplicating information already discussed
|
|
91
|
+
- Identify any blockers or dependencies mentioned
|
|
92
|
+
|
|
93
|
+
### Step 3a: Determine Which Tasks Need Planning
|
|
94
|
+
|
|
95
|
+
For each task/subtask, analyze the comments to determine if a new plan should be created:
|
|
96
|
+
|
|
97
|
+
#### Check for existing plan:
|
|
98
|
+
|
|
99
|
+
Look for comments containing:
|
|
100
|
+
|
|
101
|
+
- `## Implementation Plan` (for parent tasks)
|
|
102
|
+
- `## Implementation Plan for Subtask` (for subtasks)
|
|
103
|
+
|
|
104
|
+
#### Decision logic:
|
|
105
|
+
|
|
106
|
+
**Create a NEW plan if:**
|
|
107
|
+
|
|
108
|
+
1. **No plan exists**: The task/subtask has no comment with an implementation plan
|
|
109
|
+
2. **Plan change requested**: An existing plan exists, BUT there is a **newer comment** (created after the plan) that requests changes to the plan. Look for keywords like:
|
|
110
|
+
- "zmień plan" / "change plan"
|
|
111
|
+
- "zaktualizuj plan" / "update plan"
|
|
112
|
+
- "popraw plan" / "fix plan"
|
|
113
|
+
- "nowy plan" / "new plan"
|
|
114
|
+
- "proszę o zmianę" / "please change"
|
|
115
|
+
- "do zmiany" / "needs change"
|
|
116
|
+
- "uwagi do planu" / "comments on plan"
|
|
117
|
+
|
|
118
|
+
**SKIP planning if:**
|
|
119
|
+
|
|
120
|
+
1. **Plan exists and no change requested**: The task/subtask already has an implementation plan AND there are no newer comments requesting changes
|
|
121
|
+
2. **Plan exists with only acknowledgment comments**: Newer comments exist but they are just acknowledgments (e.g., "ok", "dzięki", "rozumiem")
|
|
122
|
+
|
|
123
|
+
#### Output:
|
|
124
|
+
|
|
125
|
+
Create a list of tasks/subtasks that need planning:
|
|
126
|
+
|
|
127
|
+
- `tasksNeedingPlan`: Array of task IDs that need a new or updated plan
|
|
128
|
+
- `tasksWithExistingPlan`: Array of task IDs that already have valid plans (skip these)
|
|
129
|
+
|
|
130
|
+
**Important**: If ALL tasks already have valid plans and no changes are requested, inform the user and ask if they want to regenerate plans anyway.
|
|
131
|
+
|
|
132
|
+
### Step 4: Analyze Previous Commits
|
|
133
|
+
|
|
134
|
+
Search for previous commits related to this Linear task by looking for the `linearTaskId` (and subtask IDs if applicable) in commit messages:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
# For parent task
|
|
138
|
+
git log --all --grep="<linearTaskId>" --oneline
|
|
139
|
+
|
|
140
|
+
# For each subtask
|
|
141
|
+
git log --all --grep="<subtaskId>" --oneline
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
For each found commit, analyze:
|
|
145
|
+
|
|
146
|
+
1. **Commit message**: What was the purpose of the change
|
|
147
|
+
2. **Changed files**: Run `git show --stat <commit-hash>` to see affected files
|
|
148
|
+
3. **Detailed changes**: Run `git show <commit-hash>` if needed to understand specific changes
|
|
149
|
+
|
|
150
|
+
This helps to:
|
|
151
|
+
|
|
152
|
+
- Understand what work has already been completed
|
|
153
|
+
- Identify patterns and approaches already established
|
|
154
|
+
- Avoid duplicating already implemented features
|
|
155
|
+
- Build upon existing implementation
|
|
156
|
+
|
|
157
|
+
### Step 5: Analyze Staged Changes
|
|
158
|
+
|
|
159
|
+
Check what's currently staged in Git:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
git status
|
|
163
|
+
git diff --cached
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
Analyze staged changes to understand:
|
|
167
|
+
|
|
168
|
+
- What work is in progress but not yet committed
|
|
169
|
+
- Files that are being modified as part of this task
|
|
170
|
+
- Current implementation direction
|
|
171
|
+
|
|
172
|
+
### Step 6: Analyze the Codebase
|
|
173
|
+
|
|
174
|
+
Based on the task requirements (and each subtask if applicable), explore the codebase to understand:
|
|
175
|
+
|
|
176
|
+
1. **Affected areas**: Identify which files, components, or modules will need changes
|
|
177
|
+
2. **Existing patterns**: Understand current implementation patterns to maintain consistency
|
|
178
|
+
3. **Dependencies**: Identify any dependencies or related code that might be affected
|
|
179
|
+
4. **Test coverage**: Check existing tests that might need updates
|
|
180
|
+
|
|
181
|
+
Use tools like:
|
|
182
|
+
|
|
183
|
+
- `Glob` to find relevant files
|
|
184
|
+
- `Grep` to search for related code patterns
|
|
185
|
+
- `Read` to understand specific implementations
|
|
186
|
+
|
|
187
|
+
**Important**: Always check for Angular 14 patterns in existing code:
|
|
188
|
+
- Look for `*ngIf`, `*ngFor` usage (NOT `@if`, `@for`)
|
|
189
|
+
- Look for constructor injection patterns
|
|
190
|
+
- Look for `@Input()`, `@Output()` decorators
|
|
191
|
+
- Look for `BehaviorSubject`, `Observable` patterns (NOT signals)
|
|
192
|
+
|
|
193
|
+
### Step 6a: Analyze External Library Dependencies
|
|
194
|
+
|
|
195
|
+
Check if the task requires changes to external library packages:
|
|
196
|
+
|
|
197
|
+
#### @smartsoft001 libraries
|
|
198
|
+
|
|
199
|
+
- **Repository location**: `../smartsoft001`
|
|
200
|
+
- **Package path**: `../smartsoft001/packages/`
|
|
201
|
+
- If changes are needed in `@smartsoft001/*` packages, explore the library repository to understand:
|
|
202
|
+
- Current implementation of the relevant package
|
|
203
|
+
- API surface that needs to be modified or extended
|
|
204
|
+
- Existing patterns and conventions in the library
|
|
205
|
+
|
|
206
|
+
#### @smartsoft001-mobilems libraries
|
|
207
|
+
|
|
208
|
+
- **Repository location**: `../mobilems-framework`
|
|
209
|
+
- **Package path**: `../mobilems-framework/packages/`
|
|
210
|
+
- If changes are needed in `@smartsoft001-mobilems/*` packages, explore the library repository to understand:
|
|
211
|
+
- Current implementation of the relevant package
|
|
212
|
+
- API surface that needs to be modified or extended
|
|
213
|
+
- Existing patterns and conventions in the library
|
|
214
|
+
|
|
215
|
+
**Important**: Changes to these external libraries are NOT part of this task's implementation. They require a separate process:
|
|
216
|
+
|
|
217
|
+
1. Create a separate task/PR in the library repository
|
|
218
|
+
2. Publish new version of the library
|
|
219
|
+
3. Update dependency version in this project
|
|
220
|
+
4. Then implement the changes in this project that depend on the library updates
|
|
221
|
+
|
|
222
|
+
### Step 7: Create Implementation Plans
|
|
223
|
+
|
|
224
|
+
#### If NO subtasks exist:
|
|
225
|
+
|
|
226
|
+
Create a single detailed implementation plan for the parent task with:
|
|
227
|
+
|
|
228
|
+
1. **Summary**: Brief overview of what needs to be done
|
|
229
|
+
2. **Already Completed**: Work done in previous commits (with commit references)
|
|
230
|
+
3. **Currently In Progress**: Work visible in staged changes
|
|
231
|
+
4. **Remaining Work**: What still needs to be implemented
|
|
232
|
+
5. **Technical Analysis**: Key findings from codebase exploration
|
|
233
|
+
6. **Implementation Steps**: Numbered list of specific remaining tasks
|
|
234
|
+
7. **Files to Modify**: List of files that will need changes
|
|
235
|
+
8. **New Files**: List of any new files that need to be created
|
|
236
|
+
9. **External Library Changes**: Changes needed in @smartsoft001 or @smartsoft001-mobilems (separate process)
|
|
237
|
+
10. **Testing Strategy**: How the changes will be tested
|
|
238
|
+
11. **Risks & Considerations**: Any potential issues or things to watch out for
|
|
239
|
+
12. **Estimated Complexity**: Low / Medium / High
|
|
240
|
+
|
|
241
|
+
#### If subtasks exist:
|
|
242
|
+
|
|
243
|
+
Create a **separate plan for each subtask** that includes:
|
|
244
|
+
|
|
245
|
+
1. **Parent Context**: Reference to parent task and its overall goal
|
|
246
|
+
2. **Subtask Summary**: What this specific subtask needs to accomplish
|
|
247
|
+
3. **Already Completed**: Work done in previous commits for this subtask
|
|
248
|
+
4. **Currently In Progress**: Staged changes related to this subtask
|
|
249
|
+
5. **Remaining Work**: What still needs to be done for this subtask
|
|
250
|
+
6. **Technical Analysis**: Findings specific to this subtask
|
|
251
|
+
7. **Implementation Steps**: Steps specific to this subtask
|
|
252
|
+
8. **Files to Modify**: Files affected by this subtask
|
|
253
|
+
9. **New Files**: New files needed for this subtask
|
|
254
|
+
10. **External Library Changes**: Changes in @smartsoft001 or @smartsoft001-mobilems (separate process)
|
|
255
|
+
11. **Dependencies**: Other subtasks this depends on or blocks
|
|
256
|
+
12. **Testing Strategy**: Testing specific to this subtask
|
|
257
|
+
13. **Estimated Complexity**: Low / Medium / High
|
|
258
|
+
|
|
259
|
+
### Step 8: Format the Plans
|
|
260
|
+
|
|
261
|
+
#### Format for task WITHOUT subtasks:
|
|
262
|
+
|
|
263
|
+
```markdown
|
|
264
|
+
## Implementation Plan
|
|
265
|
+
|
|
266
|
+
### Summary
|
|
267
|
+
|
|
268
|
+
[Brief overview]
|
|
269
|
+
|
|
270
|
+
### Already Completed
|
|
271
|
+
|
|
272
|
+
[List of work done in previous commits - skip if no previous commits]
|
|
273
|
+
|
|
274
|
+
- `abc1234` - [commit message / description of changes]
|
|
275
|
+
- `def5678` - [commit message / description of changes]
|
|
276
|
+
|
|
277
|
+
**Files modified in previous commits:**
|
|
278
|
+
|
|
279
|
+
- `path/to/file1.ts`
|
|
280
|
+
- `path/to/file2.ts`
|
|
281
|
+
|
|
282
|
+
### Currently In Progress
|
|
283
|
+
|
|
284
|
+
[Description of staged changes - skip if nothing staged]
|
|
285
|
+
|
|
286
|
+
- [File/change description]
|
|
287
|
+
|
|
288
|
+
### Remaining Work
|
|
289
|
+
|
|
290
|
+
[What still needs to be done based on task requirements]
|
|
291
|
+
|
|
292
|
+
- [ ] [Remaining item 1]
|
|
293
|
+
- [ ] [Remaining item 2]
|
|
294
|
+
|
|
295
|
+
### Technical Analysis
|
|
296
|
+
|
|
297
|
+
[Key findings from codebase exploration]
|
|
298
|
+
|
|
299
|
+
**Angular 14 patterns to follow:**
|
|
300
|
+
- Use `*ngIf` / `*ngFor` for control flow
|
|
301
|
+
- Use constructor injection for DI
|
|
302
|
+
- Use `@Input()` / `@Output()` for component communication
|
|
303
|
+
- Use `BehaviorSubject` / `Observable` for state management
|
|
304
|
+
|
|
305
|
+
### Implementation Steps
|
|
306
|
+
|
|
307
|
+
1. [Step 1]
|
|
308
|
+
2. [Step 2]
|
|
309
|
+
3. [Step 3]
|
|
310
|
+
...
|
|
311
|
+
|
|
312
|
+
### Files to Modify
|
|
313
|
+
|
|
314
|
+
- `path/to/file1.ts` - [reason]
|
|
315
|
+
- `path/to/file2.ts` - [reason]
|
|
316
|
+
|
|
317
|
+
### New Files
|
|
318
|
+
|
|
319
|
+
- `path/to/new-file.ts` - [purpose]
|
|
320
|
+
|
|
321
|
+
### External Library Changes (separate process)
|
|
322
|
+
|
|
323
|
+
[Skip this section if no library changes are needed]
|
|
324
|
+
|
|
325
|
+
**@smartsoft001 (repo: ../smartsoft001)**
|
|
326
|
+
|
|
327
|
+
- [ ] `packages/[package-name]` - [description of required changes]
|
|
328
|
+
|
|
329
|
+
**@smartsoft001-mobilems (repo: ../mobilems-framework)**
|
|
330
|
+
|
|
331
|
+
- [ ] `packages/[package-name]` - [description of required changes]
|
|
332
|
+
|
|
333
|
+
> **Note**: These changes are NOT part of this task implementation. They require:
|
|
334
|
+
>
|
|
335
|
+
> 1. Separate task/PR in the library repository
|
|
336
|
+
> 2. Library version publication
|
|
337
|
+
> 3. Dependency update in this project
|
|
338
|
+
|
|
339
|
+
### Testing Strategy
|
|
340
|
+
|
|
341
|
+
- [ ] Unit tests for [component/service]
|
|
342
|
+
- [ ] E2E tests for [feature]
|
|
343
|
+
- [ ] Manual testing: [scenarios]
|
|
344
|
+
|
|
345
|
+
### Risks & Considerations
|
|
346
|
+
|
|
347
|
+
- [Risk 1]
|
|
348
|
+
- [Risk 2]
|
|
349
|
+
|
|
350
|
+
### Estimated Complexity
|
|
351
|
+
|
|
352
|
+
[Low / Medium / High]
|
|
353
|
+
|
|
354
|
+
---
|
|
355
|
+
|
|
356
|
+
_Plan generated by Claude Code (flow-legacy)_
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
#### Format for SUBTASK plan:
|
|
360
|
+
|
|
361
|
+
```markdown
|
|
362
|
+
## Implementation Plan for Subtask
|
|
363
|
+
|
|
364
|
+
**Parent Task**: [Parent task ID] - [Parent task title]
|
|
365
|
+
|
|
366
|
+
### Subtask Summary
|
|
367
|
+
|
|
368
|
+
[What this specific subtask needs to accomplish]
|
|
369
|
+
|
|
370
|
+
### Already Completed
|
|
371
|
+
|
|
372
|
+
[Work done in previous commits for this subtask - skip if none]
|
|
373
|
+
|
|
374
|
+
- `abc1234` - [commit message / description of changes]
|
|
375
|
+
|
|
376
|
+
**Files modified:**
|
|
377
|
+
|
|
378
|
+
- `path/to/file1.ts`
|
|
379
|
+
|
|
380
|
+
### Currently In Progress
|
|
381
|
+
|
|
382
|
+
[Staged changes related to this subtask - skip if none]
|
|
383
|
+
|
|
384
|
+
- [File/change description]
|
|
385
|
+
|
|
386
|
+
### Remaining Work
|
|
387
|
+
|
|
388
|
+
- [ ] [Remaining item 1]
|
|
389
|
+
- [ ] [Remaining item 2]
|
|
390
|
+
|
|
391
|
+
### Technical Analysis
|
|
392
|
+
|
|
393
|
+
[Findings specific to this subtask]
|
|
394
|
+
|
|
395
|
+
**Angular 14 patterns to follow:**
|
|
396
|
+
- Use `*ngIf` / `*ngFor` for control flow
|
|
397
|
+
- Use constructor injection for DI
|
|
398
|
+
- Use `@Input()` / `@Output()` for component communication
|
|
399
|
+
|
|
400
|
+
### Implementation Steps
|
|
401
|
+
|
|
402
|
+
1. [Step 1]
|
|
403
|
+
2. [Step 2]
|
|
404
|
+
...
|
|
405
|
+
|
|
406
|
+
### Files to Modify
|
|
407
|
+
|
|
408
|
+
- `path/to/file1.ts` - [reason]
|
|
409
|
+
|
|
410
|
+
### New Files
|
|
411
|
+
|
|
412
|
+
- `path/to/new-file.ts` - [purpose]
|
|
413
|
+
|
|
414
|
+
### External Library Changes (separate process)
|
|
415
|
+
|
|
416
|
+
[Skip this section if no library changes are needed]
|
|
417
|
+
|
|
418
|
+
**@smartsoft001 (repo: ../smartsoft001)**
|
|
419
|
+
|
|
420
|
+
- [ ] `packages/[package-name]` - [description of required changes]
|
|
421
|
+
|
|
422
|
+
**@smartsoft001-mobilems (repo: ../mobilems-framework)**
|
|
423
|
+
|
|
424
|
+
- [ ] `packages/[package-name]` - [description of required changes]
|
|
425
|
+
|
|
426
|
+
> **Note**: These changes are NOT part of this subtask. Separate process required.
|
|
427
|
+
|
|
428
|
+
### Dependencies
|
|
429
|
+
|
|
430
|
+
- **Depends on**: [List subtask IDs this depends on, or "None"]
|
|
431
|
+
- **Blocks**: [List subtask IDs this blocks, or "None"]
|
|
432
|
+
|
|
433
|
+
### Testing Strategy
|
|
434
|
+
|
|
435
|
+
- [ ] [Test specific to this subtask]
|
|
436
|
+
|
|
437
|
+
### Estimated Complexity
|
|
438
|
+
|
|
439
|
+
[Low / Medium / High]
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
|
|
443
|
+
_Plan generated by Claude Code (flow-legacy)_
|
|
444
|
+
```
|
|
445
|
+
|
|
446
|
+
### Step 9: Save Plans as Comments
|
|
447
|
+
|
|
448
|
+
Use the MCP Linear server to create comments:
|
|
449
|
+
|
|
450
|
+
#### If NO subtasks:
|
|
451
|
+
|
|
452
|
+
- Create a single comment on the parent task with the implementation plan
|
|
453
|
+
|
|
454
|
+
#### If subtasks exist:
|
|
455
|
+
|
|
456
|
+
- Create a comment on **each subtask** with its specific implementation plan
|
|
457
|
+
- Do NOT create a plan comment on the parent task (subtask plans are sufficient)
|
|
458
|
+
|
|
459
|
+
### Step 10: Confirm to User
|
|
460
|
+
|
|
461
|
+
After successfully saving the plans, confirm to the user:
|
|
462
|
+
|
|
463
|
+
- List all tasks/subtasks where plans were saved
|
|
464
|
+
- Show a summary of each plan
|
|
465
|
+
- Provide Linear task links
|
|
466
|
+
- Mention any important considerations or questions
|
|
467
|
+
|
|
468
|
+
## Guidelines
|
|
469
|
+
|
|
470
|
+
1. **Write plans in Polish**: All implementation plans must be written in Polish language
|
|
471
|
+
2. **Be thorough but concise**: Include all necessary details without being verbose
|
|
472
|
+
3. **Be specific**: Reference actual file paths and code patterns found in the codebase
|
|
473
|
+
4. **Consider edge cases**: Think about error handling, validation, and edge cases
|
|
474
|
+
5. **Follow project conventions**: Ensure the plan aligns with project architecture and patterns
|
|
475
|
+
6. **Identify dependencies**: Note if any tasks depend on others or external factors
|
|
476
|
+
7. **Ask for clarification**: If requirements are unclear, use `AskUserQuestion` before creating the plan
|
|
477
|
+
8. **Track progress accurately**: Clearly distinguish between completed, in-progress, and remaining work
|
|
478
|
+
9. **Reference commits**: Always include commit hashes when mentioning previous work
|
|
479
|
+
10. **Keep subtask plans focused**: Each subtask plan should only cover that subtask's scope
|
|
480
|
+
11. **Identify cross-subtask dependencies**: Note which subtasks depend on or block others
|
|
481
|
+
12. **Identify external library changes**: Always check if task requires changes in `@smartsoft001` (repo: `../smartsoft001`) or `@smartsoft001-mobilems` (repo: `../mobilems-framework`). Mark these as separate process items, not part of current implementation
|
|
482
|
+
13. **Skip tasks with existing plans**: Only create plans for tasks that don't have a plan yet, or where a newer comment requests plan changes. Don't regenerate plans unnecessarily.
|
|
483
|
+
14. **Detect plan change requests**: Look for keywords in newer comments that indicate a plan change is needed (e.g., "zmień plan", "zaktualizuj plan", "popraw plan", "uwagi do planu")
|
|
484
|
+
15. **Use Angular 14 patterns**: Always plan for `*ngIf`/`*ngFor`, constructor DI, `@Input()`/`@Output()`, BehaviorSubject - NOT signals, `@if`/`@for`, or `inject()`
|
|
485
|
+
|
|
486
|
+
---
|
|
487
|
+
|
|
488
|
+
**Important**: Before saving the plans, show them to the user for review and approval.
|