@sppg2001/atomize 2.0.0-alpha.0 → 2.0.1

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.
Files changed (28) hide show
  1. package/README.md +94 -555
  2. package/{templates/mixins/docs.yaml → catalog/mixins/documentation.atomize.yaml} +1 -1
  3. package/{templates/mixins/security.yaml → catalog/mixins/security-review.atomize.yaml} +1 -1
  4. package/{templates/mixins/testing.yaml → catalog/mixins/test-coverage.atomize.yaml} +1 -1
  5. package/{templates/templates/custom-saved-query.yaml → catalog/templates/agile-story-breakdown-saved-query.atomize.yaml} +2 -2
  6. package/{templates/templates/custom.yaml → catalog/templates/agile-story-breakdown.atomize.yaml} +2 -2
  7. package/{templates/templates/bug.yaml → catalog/templates/bug-fix.atomize.yaml} +1 -1
  8. package/{templates/templates/feature.yaml → catalog/templates/feature-development.atomize.yaml} +1 -1
  9. package/dist/cli/index.js +89700 -88084
  10. package/package.json +13 -13
  11. package/LICENSE +0 -21
  12. package/docs/Auth-Guide.md +0 -257
  13. package/docs/Cli-Reference.md +0 -962
  14. package/docs/Common-Validation-Errors.md +0 -556
  15. package/docs/Getting-Started.md +0 -540
  16. package/docs/Platform-Guide.md +0 -662
  17. package/docs/Story-Learner.md +0 -324
  18. package/docs/Template-Reference.md +0 -743
  19. package/docs/Validation-Modes.md +0 -252
  20. package/docs/template-wizard-guide.md +0 -738
  21. package/examples/README.md +0 -220
  22. package/examples/advanced-filtering.yaml +0 -113
  23. package/examples/backend.yaml +0 -124
  24. package/examples/conditional-dependencies-template.yaml +0 -145
  25. package/examples/conditional-percentage-template.yaml +0 -167
  26. package/examples/frontend.yaml +0 -123
  27. package/examples/fullstack.yaml +0 -167
  28. /package/{templates/templates/backend-api.yaml → catalog/templates/backend-api.atomize.yaml} +0 -0
@@ -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."
@@ -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"