@sppg2001/atomize 2.0.0 → 3.0.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/README.md +93 -551
- package/{templates/mixins/docs.yaml → catalog/mixins/documentation.atomize.yaml} +1 -1
- package/{templates/mixins/security.yaml → catalog/mixins/security-review.atomize.yaml} +1 -1
- package/{templates/mixins/testing.yaml → catalog/mixins/test-coverage.atomize.yaml} +1 -1
- package/{templates/templates/custom-saved-query.yaml → catalog/templates/agile-story-breakdown-saved-query.atomize.yaml} +2 -2
- package/{templates/templates/custom.yaml → catalog/templates/agile-story-breakdown.atomize.yaml} +2 -2
- package/{templates/templates/bug.yaml → catalog/templates/bug-fix.atomize.yaml} +1 -1
- package/{templates/templates/feature.yaml → catalog/templates/feature-development.atomize.yaml} +1 -1
- package/dist/cli/index.js +17866 -21738
- package/package.json +19 -16
- package/LICENSE +0 -21
- package/docs/Auth-Guide.md +0 -257
- package/docs/Cli-Reference.md +0 -959
- package/docs/Common-Validation-Errors.md +0 -556
- package/docs/Getting-Started.md +0 -540
- package/docs/Platform-Guide.md +0 -662
- package/docs/Story-Learner.md +0 -324
- package/docs/Template-Reference.md +0 -743
- package/docs/Validation-Modes.md +0 -252
- package/docs/template-wizard-guide.md +0 -738
- package/examples/README.md +0 -220
- package/examples/advanced-filtering.yaml +0 -113
- package/examples/backend.yaml +0 -124
- package/examples/conditional-dependencies-template.yaml +0 -145
- package/examples/conditional-percentage-template.yaml +0 -167
- package/examples/frontend.yaml +0 -123
- package/examples/fullstack.yaml +0 -167
- /package/{templates/templates/backend-api.yaml → catalog/templates/backend-api.atomize.yaml} +0 -0
package/examples/README.md
DELETED
|
@@ -1,220 +0,0 @@
|
|
|
1
|
-
# Examples
|
|
2
|
-
|
|
3
|
-
Real-world Atomize template examples. Each file is a working template you can validate immediately and dry-run against either matching work items or explicit mock stories.
|
|
4
|
-
|
|
5
|
-
## Files
|
|
6
|
-
|
|
7
|
-
| File | What it demonstrates |
|
|
8
|
-
|------|----------------------|
|
|
9
|
-
| [`backend.yaml`](#backendyaml) | Standard backend API workflow with task dependencies |
|
|
10
|
-
| [`frontend.yaml`](#frontendyaml) | React component development workflow |
|
|
11
|
-
| [`fullstack.yaml`](#fullstackyaml) | Combined backend + frontend with a branching task graph |
|
|
12
|
-
| [`conditional-dependencies-template.yaml`](#conditional-dependencies-templateyaml) | Conditional tasks — tasks that only appear when a story meets specific criteria |
|
|
13
|
-
| [`conditional-percentage-template.yaml`](#conditional-percentage-templateyaml) | Conditional estimation — task weights that adapt to story size and tags |
|
|
14
|
-
| [`advanced-filtering.yaml`](#advanced-filteringyaml) | Full filter criteria showcase: state exclusion, historical states, area/iteration hierarchy, date filters, team override |
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## backend.yaml
|
|
19
|
-
|
|
20
|
-
A production-ready backend API template. Covers the full development cycle from API design through code review, with dependencies enforcing a logical order.
|
|
21
|
-
|
|
22
|
-
**Matches:** User Stories and Product Backlog Items tagged `backend` or `api`, in states `New`, `Approved`, or `Active`, that don't already have tasks.
|
|
23
|
-
|
|
24
|
-
**Tasks (6):**
|
|
25
|
-
1. Design API Specification — 10%
|
|
26
|
-
2. Database Schema Changes — 20%
|
|
27
|
-
3. Implement Business Logic — 35% *(depends on design + schema)*
|
|
28
|
-
4. Unit & Integration Tests — 20% *(depends on implementation)*
|
|
29
|
-
5. API Documentation — 5%
|
|
30
|
-
6. Code Review & Refinement — 10%
|
|
31
|
-
|
|
32
|
-
**Try it:**
|
|
33
|
-
```bash
|
|
34
|
-
atomize validate examples/backend.yaml
|
|
35
|
-
atomize generate examples/backend.yaml --platform mock
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## frontend.yaml
|
|
41
|
-
|
|
42
|
-
A React component development template covering the full UI lifecycle including accessibility testing.
|
|
43
|
-
|
|
44
|
-
**Matches:** User Stories tagged `frontend` or `react`, in states `New` or `Approved`, without existing tasks.
|
|
45
|
-
|
|
46
|
-
**Tasks (6):**
|
|
47
|
-
1. UI/UX Design Review — 10%
|
|
48
|
-
2. Component Structure & Setup — 15%
|
|
49
|
-
3. Component Logic Implementation — 30% *(depends on structure)*
|
|
50
|
-
4. Styling & Responsive Design — 20%
|
|
51
|
-
5. Accessibility Testing — 10%
|
|
52
|
-
6. Component Testing — 15% *(depends on logic)*
|
|
53
|
-
|
|
54
|
-
**Try it:**
|
|
55
|
-
```bash
|
|
56
|
-
atomize validate examples/frontend.yaml
|
|
57
|
-
atomize generate examples/frontend.yaml --platform mock
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
---
|
|
61
|
-
|
|
62
|
-
## fullstack.yaml
|
|
63
|
-
|
|
64
|
-
A combined backend + frontend template for end-to-end features. Uses a branching dependency graph where the backend and frontend tracks run in parallel after the design phase, then converge at integration.
|
|
65
|
-
|
|
66
|
-
**Matches:** User Stories tagged `fullstack`, in states `New` or `Active`, without existing tasks.
|
|
67
|
-
|
|
68
|
-
**Tasks (9):**
|
|
69
|
-
1. Technical Design — 10%
|
|
70
|
-
2. Backend API Implementation — 20% *(depends on design)*
|
|
71
|
-
3. Database Implementation — 15% *(conditional: only if story has `database` tag)*
|
|
72
|
-
4. Backend Tests — 10% *(depends on backend API)*
|
|
73
|
-
5. Frontend Components — 20% *(depends on design)*
|
|
74
|
-
6. Styling & Responsive Design — 10%
|
|
75
|
-
7. Frontend Tests — 8% *(depends on frontend components)*
|
|
76
|
-
8. Frontend-Backend Integration — 12% *(depends on both tracks)*
|
|
77
|
-
9. Documentation — 5%
|
|
78
|
-
|
|
79
|
-
**Try it:**
|
|
80
|
-
```bash
|
|
81
|
-
atomize validate examples/fullstack.yaml
|
|
82
|
-
atomize generate examples/fullstack.yaml --platform mock --story STORY-004
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
---
|
|
86
|
-
|
|
87
|
-
## conditional-dependencies-template.yaml
|
|
88
|
-
|
|
89
|
-
Demonstrates **conditional tasks** — tasks that are only created when a story meets specific criteria. When a conditional task is skipped, its estimation is redistributed to the remaining tasks.
|
|
90
|
-
|
|
91
|
-
**Matches:** User Stories tagged `development`.
|
|
92
|
-
|
|
93
|
-
**Key features shown:**
|
|
94
|
-
- `condition` field with tag-based rules (`CONTAINS "backend"`, `CONTAINS "frontend"`, `CONTAINS "security"`)
|
|
95
|
-
- `condition` with compound logic (`AND`, `OR`, `NOT CONTAINS`)
|
|
96
|
-
- `condition` based on numeric fields (`${story.estimation} >= 13`)
|
|
97
|
-
- Dependencies that span conditional tasks (e.g., `unit-tests` depends on `backend-api` and `frontend-ui` — whichever were created)
|
|
98
|
-
|
|
99
|
-
**Tasks (9, most conditional):**
|
|
100
|
-
|
|
101
|
-
| Task | Created when |
|
|
102
|
-
|------|-------------|
|
|
103
|
-
| UI/UX Design | Always |
|
|
104
|
-
| Backend API | Story has `backend` tag |
|
|
105
|
-
| Frontend UI | Story has `frontend` tag |
|
|
106
|
-
| Accessibility Testing | Story has `frontend` tag OR doesn't have `legacy` tag |
|
|
107
|
-
| Security Review | Story has `security` tag AND priority ≤ 2 |
|
|
108
|
-
| Unit Tests | Always *(depends on whichever of backend/frontend exist)* |
|
|
109
|
-
| Integration Tests | Always *(depends on unit tests)* |
|
|
110
|
-
| Performance Testing | Story estimation ≥ 13 points |
|
|
111
|
-
| Documentation | Always *(depends on unit tests)* |
|
|
112
|
-
| Deployment | Always *(depends on integration tests + docs)* |
|
|
113
|
-
|
|
114
|
-
**Try it:**
|
|
115
|
-
```bash
|
|
116
|
-
atomize validate examples/conditional-dependencies-template.yaml
|
|
117
|
-
atomize generate examples/conditional-dependencies-template.yaml --platform mock --story STORY-004
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
---
|
|
121
|
-
|
|
122
|
-
## conditional-percentage-template.yaml
|
|
123
|
-
|
|
124
|
-
Demonstrates **`estimationPercentCondition`** — each task's percentage of the story adapts based on the story's size and tags. This is useful when the same task represents different amounts of work depending on story complexity.
|
|
125
|
-
|
|
126
|
-
**Matches:** All User Stories without existing tasks.
|
|
127
|
-
|
|
128
|
-
**Key features shown:**
|
|
129
|
-
- `estimationPercentCondition` on multiple tasks
|
|
130
|
-
- First-match-wins rule evaluation order
|
|
131
|
-
- Conditional task combined with conditional estimation (the `frontend-impl` task is both conditional *and* has an adaptive percentage)
|
|
132
|
-
- Normalization using resolved conditional percentages as the baseline (not static fallbacks)
|
|
133
|
-
|
|
134
|
-
**Tasks (5):**
|
|
135
|
-
|
|
136
|
-
| Task | Default % | Conditional rules |
|
|
137
|
-
|------|-----------|-------------------|
|
|
138
|
-
| Technical Design | 10% | ≥ 13 pts → 20%, ≥ 5 pts → 15% |
|
|
139
|
-
| Backend Implementation | 60% | `fullstack` tag → 40%, ≥ 5 pts → 50% |
|
|
140
|
-
| Frontend Implementation | 30% | `complex-ui` tag → 40% — *only created for `fullstack` stories* |
|
|
141
|
-
| Testing & QA | 20% | `critical` + ≥ 8 pts → 30%, `critical` alone → 25% |
|
|
142
|
-
| Code Review | 5% | Always 5% |
|
|
143
|
-
|
|
144
|
-
**Scenarios and their resolved splits (before normalization):**
|
|
145
|
-
|
|
146
|
-
| Scenario | Design | Backend | Frontend | Testing | Review | Total |
|
|
147
|
-
|----------|--------|---------|----------|---------|--------|-------|
|
|
148
|
-
| Small backend (< 5 pts) | 10% | 60% | — | 20% | 5% | 95% |
|
|
149
|
-
| Medium backend (5–12 pts) | 15% | 50% | — | 20% | 5% | 90% |
|
|
150
|
-
| Medium fullstack (5–12 pts) | 15% | 40% | 30% | 20% | 5% | 110% |
|
|
151
|
-
| Large critical fullstack (≥ 13 pts, `critical`) | 20% | 40% | 30% | 30% | 5% | 125% |
|
|
152
|
-
|
|
153
|
-
All totals are normalized to exactly 100% at generation time.
|
|
154
|
-
|
|
155
|
-
**Try it:**
|
|
156
|
-
```bash
|
|
157
|
-
atomize validate examples/conditional-percentage-template.yaml
|
|
158
|
-
atomize generate examples/conditional-percentage-template.yaml --platform mock
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
---
|
|
162
|
-
|
|
163
|
-
## advanced-filtering.yaml
|
|
164
|
-
|
|
165
|
-
A reference template that demonstrates every available filter option. Use it as a starting point when you need precise control over which work items Atomize processes.
|
|
166
|
-
|
|
167
|
-
**Key features shown:**
|
|
168
|
-
|
|
169
|
-
| Filter | What it does |
|
|
170
|
-
|--------|-------------|
|
|
171
|
-
| `team` | Overrides the team from the selected Azure DevOps profile for this template |
|
|
172
|
-
| `statesExclude` | Excludes items in `Done`, `Removed`, or `Won't Fix` |
|
|
173
|
-
| `statesWereEver` | Matches items that passed through `In Review` historically |
|
|
174
|
-
| `areaPathsUnder` | Matches `MyProject\Backend` **and all sub-areas** (hierarchy traversal) |
|
|
175
|
-
| `iterationsUnder` | Matches all sprints under `Release 3` (not just one sprint) |
|
|
176
|
-
| `changedAfter` | Only items touched in the last 14 days (`@Today-14`) |
|
|
177
|
-
| `createdAfter` | Only items created in the last 90 days (`@Today-90`) |
|
|
178
|
-
|
|
179
|
-
**Supported `@Today` macro syntax:**
|
|
180
|
-
- `@Today` — start of today
|
|
181
|
-
- `@Today-N` — N days in the past (e.g. `@Today-7`)
|
|
182
|
-
- `@Today+N` — N days in the future
|
|
183
|
-
- Also: `@StartOfWeek`, `@StartOfMonth`, `@StartOfYear` (with optional offsets)
|
|
184
|
-
|
|
185
|
-
**Try it:**
|
|
186
|
-
```bash
|
|
187
|
-
atomize validate examples/advanced-filtering.yaml
|
|
188
|
-
atomize generate examples/advanced-filtering.yaml --platform mock --story STORY-001
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
## Running All Examples
|
|
194
|
-
|
|
195
|
-
```bash
|
|
196
|
-
# Validate all examples
|
|
197
|
-
for f in examples/*.yaml; do
|
|
198
|
-
echo "Validating $f..."
|
|
199
|
-
atomize validate "$f"
|
|
200
|
-
done
|
|
201
|
-
|
|
202
|
-
# Dry-run examples that match the bundled mock filters
|
|
203
|
-
for f in examples/backend.yaml examples/frontend.yaml examples/conditional-percentage-template.yaml; do
|
|
204
|
-
echo "Testing $f..."
|
|
205
|
-
atomize generate "$f" --platform mock
|
|
206
|
-
done
|
|
207
|
-
|
|
208
|
-
# Dry-run examples whose filters are intentionally more specific than the mock dataset
|
|
209
|
-
atomize generate examples/fullstack.yaml --platform mock --story STORY-004
|
|
210
|
-
atomize generate examples/conditional-dependencies-template.yaml --platform mock --story STORY-004
|
|
211
|
-
atomize generate examples/advanced-filtering.yaml --platform mock --story STORY-001
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
---
|
|
215
|
-
|
|
216
|
-
## See Also
|
|
217
|
-
|
|
218
|
-
- [Template Reference](../docs/Template-Reference.md) — full template schema
|
|
219
|
-
- [Validation Modes](../docs/Validation-Modes.md) — strict vs lenient validation
|
|
220
|
-
- [CLI Reference](../docs/Cli-Reference.md) — all commands and flags
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
version: "1.0"
|
|
2
|
-
name: "Advanced Filtering Demo"
|
|
3
|
-
description: |
|
|
4
|
-
Demonstrates the full range of filter criteria: state exclusion, historical
|
|
5
|
-
state matching, area/iteration hierarchy traversal, date-based filters, and
|
|
6
|
-
team override.
|
|
7
|
-
author: "Atomize"
|
|
8
|
-
tags: ["demo", "filtering", "advanced"]
|
|
9
|
-
|
|
10
|
-
# Each option below is independent — in a real template you would only use
|
|
11
|
-
# the subset that makes sense for your workflow.
|
|
12
|
-
filter:
|
|
13
|
-
# Override the team from the selected Azure DevOps profile
|
|
14
|
-
team: "Backend Team"
|
|
15
|
-
|
|
16
|
-
workItemTypes:
|
|
17
|
-
- "User Story"
|
|
18
|
-
|
|
19
|
-
# Items currently in these states
|
|
20
|
-
states:
|
|
21
|
-
- "Active"
|
|
22
|
-
- "In Progress"
|
|
23
|
-
|
|
24
|
-
# Exclude items in these states (complements `states`)
|
|
25
|
-
statesExclude:
|
|
26
|
-
- "Done"
|
|
27
|
-
- "Removed"
|
|
28
|
-
- "Won't Fix"
|
|
29
|
-
|
|
30
|
-
# Items that passed through code review at some point (historical match)
|
|
31
|
-
statesWereEver:
|
|
32
|
-
- "In Review"
|
|
33
|
-
|
|
34
|
-
tags:
|
|
35
|
-
include:
|
|
36
|
-
- "backend"
|
|
37
|
-
exclude:
|
|
38
|
-
- "deprecated"
|
|
39
|
-
- "on-hold"
|
|
40
|
-
|
|
41
|
-
# Match items under "MyProject\Backend" and ALL its sub-areas
|
|
42
|
-
areaPathsUnder:
|
|
43
|
-
- "MyProject\\Backend"
|
|
44
|
-
|
|
45
|
-
# Match items in the current sprint or any sprint under the current release
|
|
46
|
-
iterations:
|
|
47
|
-
- "@CurrentIteration"
|
|
48
|
-
iterationsUnder:
|
|
49
|
-
- "MyProject\\Release 3"
|
|
50
|
-
|
|
51
|
-
# Only items assigned to the person running the command
|
|
52
|
-
assignedTo:
|
|
53
|
-
- "@Me"
|
|
54
|
-
|
|
55
|
-
# Only items touched in the last 14 days
|
|
56
|
-
changedAfter: "@Today-14"
|
|
57
|
-
|
|
58
|
-
# Only items created in the last 90 days
|
|
59
|
-
createdAfter: "@Today-90"
|
|
60
|
-
|
|
61
|
-
priority:
|
|
62
|
-
min: 1
|
|
63
|
-
max: 2
|
|
64
|
-
|
|
65
|
-
excludeIfHasTasks: true
|
|
66
|
-
|
|
67
|
-
tasks:
|
|
68
|
-
- id: "design"
|
|
69
|
-
title: "Design: ${story.title}"
|
|
70
|
-
description: "Technical design and approach"
|
|
71
|
-
estimationPercent: 15
|
|
72
|
-
activity: "Design"
|
|
73
|
-
assignTo: "@ParentAssignee"
|
|
74
|
-
|
|
75
|
-
- id: "implement"
|
|
76
|
-
title: "Implement: ${story.title}"
|
|
77
|
-
description: "Core implementation"
|
|
78
|
-
estimationPercent: 55
|
|
79
|
-
activity: "Development"
|
|
80
|
-
assignTo: "@ParentAssignee"
|
|
81
|
-
dependsOn:
|
|
82
|
-
- "design"
|
|
83
|
-
|
|
84
|
-
- id: "tests"
|
|
85
|
-
title: "Tests"
|
|
86
|
-
description: "Unit and integration tests"
|
|
87
|
-
estimationPercent: 20
|
|
88
|
-
activity: "Testing"
|
|
89
|
-
dependsOn:
|
|
90
|
-
- "implement"
|
|
91
|
-
|
|
92
|
-
- id: "review"
|
|
93
|
-
title: "Code Review & Documentation"
|
|
94
|
-
estimationPercent: 10
|
|
95
|
-
activity: "Documentation"
|
|
96
|
-
dependsOn:
|
|
97
|
-
- "tests"
|
|
98
|
-
|
|
99
|
-
estimation:
|
|
100
|
-
strategy: "percentage"
|
|
101
|
-
rounding: "nearest"
|
|
102
|
-
minimumTaskPoints: 0.5
|
|
103
|
-
|
|
104
|
-
validation:
|
|
105
|
-
totalEstimationMustBe: 100
|
|
106
|
-
minTasks: 3
|
|
107
|
-
|
|
108
|
-
metadata:
|
|
109
|
-
category: "Demo"
|
|
110
|
-
difficulty: "beginner"
|
|
111
|
-
recommendedFor:
|
|
112
|
-
- "Learning Atomize filter options"
|
|
113
|
-
estimationGuidelines: "Tasks here are illustrative — adjust percentages to fit your team's workflow."
|
package/examples/backend.yaml
DELETED
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
version: "1.0"
|
|
2
|
-
name: "Backend API Feature"
|
|
3
|
-
description: "Standard tasks for backend API development"
|
|
4
|
-
author: "Atomize"
|
|
5
|
-
tags: ["backend", "api", "standard"]
|
|
6
|
-
|
|
7
|
-
# Filter to identify applicable User Stories
|
|
8
|
-
filter:
|
|
9
|
-
workItemTypes:
|
|
10
|
-
- "User Story"
|
|
11
|
-
- "Product Backlog Item"
|
|
12
|
-
states:
|
|
13
|
-
- "New"
|
|
14
|
-
- "Approved"
|
|
15
|
-
- "Active"
|
|
16
|
-
tags:
|
|
17
|
-
include:
|
|
18
|
-
- "backend"
|
|
19
|
-
- "api"
|
|
20
|
-
excludeIfHasTasks: true
|
|
21
|
-
|
|
22
|
-
# Task template with estimation percentages
|
|
23
|
-
tasks:
|
|
24
|
-
- id: "design-api"
|
|
25
|
-
title: "Design API Specification"
|
|
26
|
-
description: |
|
|
27
|
-
Design RESTful API endpoints following company standards:
|
|
28
|
-
- Define request/response models
|
|
29
|
-
- Document in OpenAPI/Swagger
|
|
30
|
-
- Review with team architect
|
|
31
|
-
estimationPercent: 10
|
|
32
|
-
tags: ["design", "api"]
|
|
33
|
-
activity: "Design"
|
|
34
|
-
|
|
35
|
-
- id: "database-schema"
|
|
36
|
-
title: "Database Schema Changes"
|
|
37
|
-
description: |
|
|
38
|
-
Design and implement database changes:
|
|
39
|
-
- Create/update migrations
|
|
40
|
-
- Define models and relationships
|
|
41
|
-
- Index optimization
|
|
42
|
-
estimationPercent: 20
|
|
43
|
-
tags: ["database", "backend"]
|
|
44
|
-
activity: "Development"
|
|
45
|
-
|
|
46
|
-
- id: "implement-logic"
|
|
47
|
-
title: "Implement Business Logic"
|
|
48
|
-
description: |
|
|
49
|
-
Core API implementation:
|
|
50
|
-
- Implement service layer
|
|
51
|
-
- Add validation logic
|
|
52
|
-
- Error handling
|
|
53
|
-
- Logging
|
|
54
|
-
estimationPercent: 35
|
|
55
|
-
tags: ["implementation", "backend"]
|
|
56
|
-
activity: "Development"
|
|
57
|
-
dependsOn:
|
|
58
|
-
- "design-api"
|
|
59
|
-
- "database-schema"
|
|
60
|
-
|
|
61
|
-
- id: "unit-tests"
|
|
62
|
-
title: "Unit & Integration Tests"
|
|
63
|
-
description: |
|
|
64
|
-
Comprehensive test coverage:
|
|
65
|
-
- Unit tests (80%+ coverage)
|
|
66
|
-
- Integration tests
|
|
67
|
-
- Mock external dependencies
|
|
68
|
-
estimationPercent: 20
|
|
69
|
-
tags: ["testing", "quality"]
|
|
70
|
-
activity: "Testing"
|
|
71
|
-
dependsOn:
|
|
72
|
-
- "implement-logic"
|
|
73
|
-
|
|
74
|
-
- id: "documentation"
|
|
75
|
-
title: "API Documentation"
|
|
76
|
-
description: |
|
|
77
|
-
Update documentation:
|
|
78
|
-
- API endpoint documentation
|
|
79
|
-
- Update README
|
|
80
|
-
- Code comments
|
|
81
|
-
- Postman collection
|
|
82
|
-
estimationPercent: 5
|
|
83
|
-
tags: ["documentation"]
|
|
84
|
-
activity: "Documentation"
|
|
85
|
-
|
|
86
|
-
- id: "code-review"
|
|
87
|
-
title: "Code Review & Refinement"
|
|
88
|
-
description: |
|
|
89
|
-
Review and refine:
|
|
90
|
-
- Create pull request
|
|
91
|
-
- Address review feedback
|
|
92
|
-
- Final testing
|
|
93
|
-
estimationPercent: 10
|
|
94
|
-
tags: ["review", "quality"]
|
|
95
|
-
activity: "Design"
|
|
96
|
-
|
|
97
|
-
# Estimation strategy
|
|
98
|
-
estimation:
|
|
99
|
-
strategy: "percentage"
|
|
100
|
-
source: "Microsoft.VSTS.Scheduling.StoryPoints"
|
|
101
|
-
rounding: "nearest"
|
|
102
|
-
minimumTaskPoints: 0.5
|
|
103
|
-
|
|
104
|
-
# Validation rules
|
|
105
|
-
validation:
|
|
106
|
-
totalEstimationMustBe: 100
|
|
107
|
-
minTasks: 4
|
|
108
|
-
maxTasks: 10
|
|
109
|
-
|
|
110
|
-
# Metadata
|
|
111
|
-
metadata:
|
|
112
|
-
category: "Backend Development"
|
|
113
|
-
difficulty: "intermediate"
|
|
114
|
-
recommendedFor:
|
|
115
|
-
- "API features"
|
|
116
|
-
- "Microservices"
|
|
117
|
-
- "Backend services"
|
|
118
|
-
estimationGuidelines: |
|
|
119
|
-
Use this template for stories sized 3-13 points.
|
|
120
|
-
For larger stories, consider breaking down first.
|
|
121
|
-
examples:
|
|
122
|
-
- "User authentication API"
|
|
123
|
-
- "Payment processing endpoint"
|
|
124
|
-
- "Data export service"
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
version: "1.0"
|
|
2
|
-
name: "Full-Stack Development with Conditional Tasks"
|
|
3
|
-
description: "Template demonstrating conditional tasks and dependencies"
|
|
4
|
-
|
|
5
|
-
filter:
|
|
6
|
-
workItemTypes:
|
|
7
|
-
- "User Story"
|
|
8
|
-
tags:
|
|
9
|
-
include:
|
|
10
|
-
- "development"
|
|
11
|
-
|
|
12
|
-
estimation:
|
|
13
|
-
rounding: "nearest"
|
|
14
|
-
minimumTaskPoints: 0.5
|
|
15
|
-
|
|
16
|
-
tasks:
|
|
17
|
-
# Phase 1: Design (always runs)
|
|
18
|
-
- id: "design"
|
|
19
|
-
title: "UI/UX Design and Mockups"
|
|
20
|
-
description: "Create design mockups for ${story.title}"
|
|
21
|
-
estimationPercent: 15
|
|
22
|
-
activity: "Design"
|
|
23
|
-
assignTo: "@ParentAssignee"
|
|
24
|
-
tags:
|
|
25
|
-
- "design"
|
|
26
|
-
|
|
27
|
-
# Phase 2: Backend (conditional - only if story has backend tag)
|
|
28
|
-
- id: "backend-api"
|
|
29
|
-
title: "Backend API Implementation"
|
|
30
|
-
description: "Implement REST API endpoints for ${story.title}"
|
|
31
|
-
estimationPercent: 30
|
|
32
|
-
activity: "Development"
|
|
33
|
-
dependsOn: ["design"]
|
|
34
|
-
condition:
|
|
35
|
-
field: tags
|
|
36
|
-
operator: contains
|
|
37
|
-
value: backend
|
|
38
|
-
tags:
|
|
39
|
-
- "backend"
|
|
40
|
-
- "api"
|
|
41
|
-
|
|
42
|
-
# Phase 3: Frontend (conditional - only if story has frontend tag)
|
|
43
|
-
- id: "frontend-ui"
|
|
44
|
-
title: "Frontend UI Implementation"
|
|
45
|
-
description: "Build user interface for ${story.title}"
|
|
46
|
-
estimationPercent: 35
|
|
47
|
-
activity: "Development"
|
|
48
|
-
dependsOn: ["design"]
|
|
49
|
-
condition:
|
|
50
|
-
field: tags
|
|
51
|
-
operator: contains
|
|
52
|
-
value: frontend
|
|
53
|
-
tags:
|
|
54
|
-
- "frontend"
|
|
55
|
-
|
|
56
|
-
# Accessibility testing (conditional - only for frontend stories without legacy tag)
|
|
57
|
-
- id: "accessibility-testing"
|
|
58
|
-
title: "Accessibility Testing (WCAG)"
|
|
59
|
-
description: "Ensure UI meets accessibility standards for ${story.title}"
|
|
60
|
-
estimationPercent: 7
|
|
61
|
-
activity: "Testing"
|
|
62
|
-
dependsOn: ["frontend-ui"]
|
|
63
|
-
condition:
|
|
64
|
-
any:
|
|
65
|
-
- field: tags
|
|
66
|
-
operator: contains
|
|
67
|
-
value: frontend
|
|
68
|
-
- field: tags
|
|
69
|
-
operator: not-contains
|
|
70
|
-
value: legacy
|
|
71
|
-
tags:
|
|
72
|
-
- "accessibility"
|
|
73
|
-
- "testing"
|
|
74
|
-
|
|
75
|
-
# Security tasks (conditional - only for high-priority stories with security tag)
|
|
76
|
-
- id: "security-review"
|
|
77
|
-
title: "Security Review and Audit"
|
|
78
|
-
description: "Perform security review for ${story.title}"
|
|
79
|
-
estimationPercent: 8
|
|
80
|
-
activity: "Testing"
|
|
81
|
-
dependsOn: ["backend-api", "frontend-ui"]
|
|
82
|
-
condition:
|
|
83
|
-
all:
|
|
84
|
-
- field: tags
|
|
85
|
-
operator: contains
|
|
86
|
-
value: security
|
|
87
|
-
- field: priority
|
|
88
|
-
operator: lte
|
|
89
|
-
value: 2
|
|
90
|
-
priority: 1
|
|
91
|
-
tags:
|
|
92
|
-
- "security"
|
|
93
|
-
|
|
94
|
-
# Phase 4: Testing (depends on what was implemented)
|
|
95
|
-
- id: "unit-tests"
|
|
96
|
-
title: "Unit Tests"
|
|
97
|
-
description: "Write unit tests for ${story.title}"
|
|
98
|
-
estimationPercent: 15
|
|
99
|
-
activity: "Testing"
|
|
100
|
-
dependsOn: ["backend-api", "frontend-ui"]
|
|
101
|
-
tags:
|
|
102
|
-
- "testing"
|
|
103
|
-
|
|
104
|
-
- id: "integration-tests"
|
|
105
|
-
title: "Integration Tests"
|
|
106
|
-
description: "Write integration tests for ${story.title}"
|
|
107
|
-
estimationPercent: 12
|
|
108
|
-
activity: "Testing"
|
|
109
|
-
dependsOn: ["unit-tests"]
|
|
110
|
-
tags:
|
|
111
|
-
- "testing"
|
|
112
|
-
|
|
113
|
-
# Performance testing (conditional - only for stories with high estimation)
|
|
114
|
-
- id: "performance-tests"
|
|
115
|
-
title: "Performance and Load Testing"
|
|
116
|
-
description: "Conduct performance testing for ${story.title}"
|
|
117
|
-
estimationPercent: 10
|
|
118
|
-
activity: "Testing"
|
|
119
|
-
dependsOn: ["integration-tests"]
|
|
120
|
-
condition:
|
|
121
|
-
field: estimation
|
|
122
|
-
operator: gte
|
|
123
|
-
value: 13
|
|
124
|
-
tags:
|
|
125
|
-
- "performance"
|
|
126
|
-
|
|
127
|
-
# Phase 5: Documentation (always runs, depends on everything)
|
|
128
|
-
- id: "documentation"
|
|
129
|
-
title: "Technical Documentation"
|
|
130
|
-
description: "Write technical documentation for ${story.title}"
|
|
131
|
-
estimationPercent: 8
|
|
132
|
-
activity: "Documentation"
|
|
133
|
-
dependsOn: ["unit-tests"]
|
|
134
|
-
tags:
|
|
135
|
-
- "documentation"
|
|
136
|
-
|
|
137
|
-
# Deployment (final step, depends on all testing)
|
|
138
|
-
- id: "deployment"
|
|
139
|
-
title: "Deploy to Staging"
|
|
140
|
-
description: "Deploy ${story.title} to staging environment"
|
|
141
|
-
estimationPercent: 5
|
|
142
|
-
activity: "Deployment"
|
|
143
|
-
dependsOn: ["integration-tests", "documentation"]
|
|
144
|
-
tags:
|
|
145
|
-
- "deployment"
|