@torus-engineering/tas-kit 1.13.0 → 2.1.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.
Files changed (100) hide show
  1. package/.tas/_platform/claude-code/settings.json +58 -46
  2. package/.tas/_platform/hooks/code-quality.js +127 -127
  3. package/.tas/_platform/hooks/session-end.js +111 -111
  4. package/.tas/agents/architect.md +53 -53
  5. package/.tas/agents/aws-reviewer.md +71 -71
  6. package/.tas/agents/build-resolver.md +89 -59
  7. package/.tas/agents/code-explorer.md +63 -63
  8. package/.tas/agents/csharp-reviewer.md +62 -62
  9. package/.tas/agents/database-reviewer.md +73 -73
  10. package/.tas/agents/doc-updater.md +68 -66
  11. package/.tas/agents/python-reviewer.md +67 -67
  12. package/.tas/agents/security-reviewer.md +79 -79
  13. package/.tas/agents/software-engineer.md +53 -0
  14. package/.tas/agents/typescript-reviewer.md +65 -65
  15. package/.tas/commands/ado-create.md +33 -28
  16. package/.tas/commands/ado-delete.md +26 -22
  17. package/.tas/commands/ado-get.md +24 -20
  18. package/.tas/commands/ado-status.md +22 -18
  19. package/.tas/commands/ado-update.md +31 -27
  20. package/.tas/commands/tas-adr.md +37 -33
  21. package/.tas/commands/tas-apitest-plan.md +177 -173
  22. package/.tas/commands/tas-apitest.md +147 -143
  23. package/.tas/commands/tas-brainstorm.md +23 -19
  24. package/.tas/commands/tas-brd.md +50 -0
  25. package/.tas/commands/tas-bug.md +127 -113
  26. package/.tas/commands/tas-checklist.md +180 -0
  27. package/.tas/commands/tas-debug.md +103 -0
  28. package/.tas/commands/tas-design.md +41 -37
  29. package/.tas/commands/tas-dev.md +225 -125
  30. package/.tas/commands/tas-e2e-mobile.md +146 -155
  31. package/.tas/commands/tas-e2e-web.md +150 -163
  32. package/.tas/commands/tas-e2e.md +289 -102
  33. package/.tas/commands/tas-feature.md +181 -47
  34. package/.tas/commands/tas-fix.md +72 -51
  35. package/.tas/commands/tas-functest-mobile.md +138 -144
  36. package/.tas/commands/tas-functest-web.md +176 -192
  37. package/.tas/commands/tas-functest.md +225 -76
  38. package/.tas/commands/tas-init.md +22 -17
  39. package/.tas/commands/tas-master-plan.md +300 -0
  40. package/.tas/commands/tas-orchestrate.md +159 -0
  41. package/.tas/commands/tas-plan.md +152 -117
  42. package/.tas/commands/tas-prd.md +57 -37
  43. package/.tas/commands/tas-review-pr.md +174 -0
  44. package/.tas/commands/tas-review.md +115 -113
  45. package/.tas/commands/tas-sad.md +47 -43
  46. package/.tas/commands/tas-security.md +91 -87
  47. package/.tas/commands/tas-spec.md +54 -50
  48. package/.tas/commands/tas-status.md +25 -16
  49. package/.tas/project-status-example.yaml +3 -1
  50. package/.tas/rules/ado-integration.md +67 -65
  51. package/.tas/rules/common/api-design.md +517 -517
  52. package/.tas/rules/common/build-debug-loop.md +233 -0
  53. package/.tas/rules/common/code-review.md +4 -0
  54. package/.tas/rules/common/feature-done.md +42 -0
  55. package/.tas/rules/common/post-implementation-review.md +4 -0
  56. package/.tas/rules/common/project-status.md +33 -16
  57. package/.tas/rules/common/sad-impact.md +81 -0
  58. package/.tas/rules/common/tdd.md +104 -89
  59. package/.tas/rules/csharp/api-testing.md +2 -2
  60. package/.tas/rules/csharp/torus-core-framework.md +128 -0
  61. package/.tas/tas-example.yaml +9 -32
  62. package/.tas/templates/AGENTS.md +13 -0
  63. package/.tas/templates/API-Test-Spec.md +5 -4
  64. package/.tas/templates/BRD.md +133 -0
  65. package/.tas/templates/Bug.md +15 -0
  66. package/.tas/templates/E2E-Execution-Report.md +8 -8
  67. package/.tas/templates/E2E-Mobile-Spec.md +6 -8
  68. package/.tas/templates/E2E-Report.md +2 -2
  69. package/.tas/templates/E2E-Scenario.md +22 -22
  70. package/.tas/templates/E2E-Test-Spec.md +274 -0
  71. package/.tas/templates/E2E-Web-Spec.md +4 -4
  72. package/.tas/templates/Feature-Technical-Part.md +69 -0
  73. package/.tas/templates/Feature-Technical-Stack.md +74 -0
  74. package/.tas/templates/Feature-Technical.md +329 -0
  75. package/.tas/templates/Feature.md +50 -26
  76. package/.tas/templates/Func-Test-Script.md +29 -56
  77. package/.tas/templates/Func-Test-Spec.md +144 -142
  78. package/.tas/templates/PRD.md +173 -142
  79. package/.tas/templates/TestChecklist.md +96 -0
  80. package/.tas/templates/torus-dotnet-bootstrap.md +223 -0
  81. package/.tas/tools/tas-ado-readme.md +24 -27
  82. package/.tas/tools/tas-ado.py +328 -25
  83. package/.tas/tools/tas-github.py +339 -0
  84. package/README.md +142 -57
  85. package/bin/cli.js +90 -90
  86. package/lib/adapters/antigravity.js +131 -131
  87. package/lib/adapters/claude-code.js +71 -35
  88. package/lib/adapters/codex.js +157 -157
  89. package/lib/adapters/cursor.js +80 -80
  90. package/lib/adapters/index.js +20 -20
  91. package/lib/adapters/utils.js +81 -81
  92. package/lib/deleted-files.json +7 -0
  93. package/lib/install.js +546 -543
  94. package/package.json +2 -2
  95. package/.tas/README.md +0 -334
  96. package/.tas/commands/tas-epic.md +0 -35
  97. package/.tas/commands/tas-story.md +0 -91
  98. package/.tas/rules/common/story-done.md +0 -30
  99. package/.tas/templates/Epic.md +0 -46
  100. package/.tas/templates/Story.md +0 -90
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@torus-engineering/tas-kit",
3
- "version": "1.13.0",
4
- "description": "Turbo AI-first toolkit for modern agentic SDLC teams.",
3
+ "version": "2.1.0",
4
+ "description": "TAS Kit - Turbo Agentic SDLC toolkit for modern AI-first software teams.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "tas-kit": "bin/cli.js"
package/.tas/README.md DELETED
@@ -1,334 +0,0 @@
1
- # TAS Kit
2
-
3
- Turbo AI-first toolkit for modern agentic SDLC teams.
4
-
5
- ---
6
-
7
- ## Purpose
8
-
9
- TAS Kit helps software development teams:
10
- - **Standardize SDLC process** with clear artifacts (PRD, SAD, ADR, Epic, Feature, Story)
11
- - **Optimize token usage** through Context Layer — invest in design phase, save in code phase
12
- - **Support multiple workflows**: from solo developer to full team with PE/SE/DSE roles
13
- - **Automate** with Hybrid and Autonomous agents operating 24/7
14
-
15
- ---
16
-
17
- ## Design Philosophy
18
-
19
- ### Spec-Driven Development
20
- All code starts from spec. Story.md is "context digest" that has absorbed all information from PRD, SAD, ADR, Feature. Each implementation session only needs to read CLAUDE.md + Story.md — no need to reload all artifacts.
21
-
22
- ### Human-Led, AI-Powered
23
- - **Human-led**: Architecture decisions, design approval, code review
24
- - **AI-assisted**: Draft creation, implementation per spec, test execution, bug detection
25
-
26
- ### Dual Mode Operation
27
- - **Hybrid Mode**: Developer and AI work together in session
28
- - **Autonomous Mode**: AI automatically develops 24/7, reports results when done
29
-
30
- ### Lightweight & Context-Aware
31
- - Each skill < 3KB, total kit < 50KB
32
- - Context Layer: invest tokens in design phase to save many times in code phase
33
- - When coding: MUST start new session (don't reuse old session that loaded PRD/SAD to avoid Window Context bloat)
34
-
35
- ### Role-Based & Template-Driven
36
- - 3 roles: PE (Product Engineer), SE (Software Engineer), DSE (DevOps Engineer)
37
- - Separate templates for PRD, SAD, ADR, Epic, Feature, Story per team standards
38
- - Flow configurable via `tas.yaml` file
39
-
40
- ### Azure DevOps Compatible
41
- - Markdown output compatible with Azure DevOps Wiki
42
- - Mermaid diagrams don't use `()` characters (avoid conflict with ADO syntax)
43
-
44
- ---
45
-
46
- ## SDLC Workflow
47
-
48
- :::mermaid
49
- graph TD
50
- subgraph Phase1["Phase 1: Discovery"]
51
- PRD["/tas-prd"]
52
- SAD["/tas-sad"]
53
- ADR["/tas-adr"]
54
- DESIGN["/tas-design"]
55
- PRD -->|Product Engineer| PRD_ARTIFACT["PRD.md"]
56
- PRD_ARTIFACT -->|Software Engineer| SAD
57
- PRD_ARTIFACT -->|Software Engineer| ADR
58
- SAD --> SAD_ARTIFACT["SAD.md"]
59
- ADR --> ADR_ARTIFACT["ADR-XXX.md"]
60
- PRD_ARTIFACT -->|Product Engineer| DESIGN
61
- DESIGN --> DESIGN_ARTIFACT["design-spec.md"]
62
- end
63
-
64
- subgraph Phase2["Phase 2: Planning"]
65
- EPIC["/tas-epic"]
66
- FEATURE["/tas-feature"]
67
- STORY["/tas-story"]
68
- PRD_ARTIFACT -->|Product Engineer| EPIC
69
- EPIC --> EPIC_ARTIFACT["Epic-XXX/"]
70
- EPIC_ARTIFACT -->|Product Engineer| FEATURE
71
- FEATURE --> FEATURE_ARTIFACT["Feature-XXX/"]
72
- SAD_ARTIFACT --> FEATURE
73
- DESIGN_ARTIFACT --> FEATURE
74
- FEATURE_ARTIFACT -->|Product Engineer| STORY
75
- STORY --> STORY_ARTIFACT["Story-XXX.md"]
76
- end
77
-
78
- subgraph Phase3["Phase 3: Implementation"]
79
- PLAN["/tas-plan"]
80
- DEV["/tas-dev"]
81
- FIX["/tas-fix"]
82
- APItest["/tas-apitest"]
83
- E2E["/tas-e2e"]
84
- FUNCTEST_WEB["/tas-functest-web"]
85
- FUNCTEST_MOBILE["/tas-functest-mobile"]
86
- E2E_WEB["/tas-e2e-web"]
87
- E2E_MOBILE["/tas-e2e-mobile"]
88
- BUG["/tas-bug"]
89
- REVIEW["/tas-review"]
90
- FUNctest["/tas-functest"]
91
- STORY_ARTIFACT -->|Software Engineer| PLAN
92
- PLAN --> STORY_ARTIFACT
93
- STORY_ARTIFACT -->|AI Agent| DEV
94
- DEV --> CODE["Source Code"]
95
- CODE -->|Bug found| FIX
96
- FIX --> CODE
97
- CODE -->|Software Engineer| REVIEW
98
- REVIEW --> REVIEW_ARTIFACT["Code Review Report"]
99
- STORY_ARTIFACT -->|Software Engineer| APItest
100
- APItest --> APITEST_ARTIFACT["API Testing Script"]
101
- FUNCTEST_ARTIFACT -->|Product Engineer| E2E
102
- E2E --> E2E_ARTIFACT["E2E Test Scenarios"]
103
- FUNCTEST_ARTIFACT -->|Software Engineer| FUNCTEST_WEB
104
- FUNCTEST_WEB --> FUNCTEST_WEB_ARTIFACT["Functional Test Web Script"]
105
- FUNCTEST_ARTIFACT -->|Software Engineer| FUNCTEST_MOBILE
106
- FUNCTEST_MOBILE --> FUNCTEST_MOBILE_ARTIFACT["Functional Test Mobile Script"]
107
- FUNCTEST_ARTIFACT -->|Product Engineer| E2E_WEB
108
- E2E_WEB --> E2E_WEB_ARTIFACT["E2E Web Test Script"]
109
- FUNCTEST_ARTIFACT -->|Product Engineer| E2E_MOBILE
110
- E2E_MOBILE --> E2E_MOBILE_ARTIFACT["E2E Mobile Test Script"]
111
- CODE -->|Bug found| BUG
112
- BUG --> BUG_ARTIFACT["Bug Report"]
113
- FEATURE_ARTIFACT -->|Product Engineer| FUNctest
114
- FUNctest --> FUNCTEST_ARTIFACT["Functional-Testing-Spec-FeatureXXX.md"]
115
- end
116
-
117
- subgraph Phase4["Phase 4: Quality & Deploy"]
118
- SECURITY["/tas-security"]
119
- PIPELINE["Pipeline / CLI"]
120
- CODE -->|DevOps Engineer| SECURITY
121
- SECURITY --> SECURITY_ARTIFACT["Security Report"]
122
- APITEST_ARTIFACT -->|Product Engineer| PIPELINE
123
- FUNCTEST_WEB_ARTIFACT --> PIPELINE
124
- FUNCTEST_MOBILE_ARTIFACT --> PIPELINE
125
- E2E_WEB_ARTIFACT --> PIPELINE
126
- E2E_MOBILE_ARTIFACT --> PIPELINE
127
- PIPELINE --> TEST_REPORT["Test Report"]
128
- SECURITY_ARTIFACT -->|DevOps Engineer| DEPLOY["Production"]
129
- TEST_REPORT --> DEPLOY
130
- end
131
-
132
- STATUS["/tas-status"] -.->|Track| PRD_ARTIFACT
133
- STATUS -.->|Track| SAD_ARTIFACT
134
- STATUS -.->|Track| STORY_ARTIFACT
135
- STATUS -.->|Track| DEPLOY
136
-
137
- style PRD_ARTIFACT fill:#e1f5ff
138
- style SAD_ARTIFACT fill:#fff4e1
139
- style DESIGN_ARTIFACT fill:#f3e5f5
140
- style STORY_ARTIFACT fill:#e8f5e9
141
- style CODE fill:#f3e5f5
142
- style TEST_REPORT fill:#c8e6c9
143
- style DEPLOY fill:#c8e6c9
144
- :::
145
-
146
- ### Phase Summary
147
-
148
- | Phase | Role | Commands | Artifacts |
149
- |-------|------|----------|-----------|
150
- | **Phase 1: Discovery** | PE, SE | `/tas-prd`, `/tas-sad`, `/tas-adr`, `/tas-design` | PRD.md, SAD.md, ADR-XXX.md, design-spec.md |
151
- | **Phase 2: Planning** | SE | `/tas-epic`, `/tas-feature`, `/tas-story`, `/tas-functest` | Epic-XXX/, Feature-XXX/, Story-XXX.md, Functional-Testing-Spec-FeatureXXX.md |
152
- | **Phase 3: Implementation** | PE, SE, AI | `/tas-plan`, `/tas-dev`, `/tas-fix`, `/tas-apitest`, `/tas-e2e`, `/tas-functest-web`, `/tas-functest-mobile`, `/tas-e2e-web`, `/tas-e2e-mobile`, `/tas-bug`, `/tas-review` | Plan.md, Source Code, API Testing Script, E2E Test Scenarios, Functional Test Scripts, Bug Report, Code Review Report |
153
- | **Phase 4: Quality & Deploy** | PE, DSE | `/tas-security`, Pipeline/CLI | Security Report, Test Report, Production |
154
-
155
- ### Phase Details
156
-
157
- #### Phase 1: Discovery
158
- - **PE**: Create PRD with `/tas-prd`, create design-spec with `/tas-design`
159
- - **SE**: Create SAD with `/tas-sad`, create ADR with `/tas-adr`
160
-
161
- #### Phase 2: Planning
162
- - **PE**: Breakdown Epic with `/tas-epic`, Feature with `/tas-feature`, Story with `/tas-story`
163
-
164
- #### Phase 3: Implementation
165
- - **SE**: Create Plan with `/tas-plan`, Implement with `/tas-dev`, Fix bug with `/tas-fix`
166
- - **SE**: Review code with `/tas-review`
167
- - **PE**: Create Functional Testing Spec with `/tas-functest`
168
- - **SE**: Create API Testing Script with `/tas-apitest`
169
- - **PE**: Create E2E Test Scenarios with `/tas-e2e`
170
- - **SE**: Create Functional Test Scripts with `/tas-functest-web`, `/tas-functest-mobile`
171
- - **PE**: Create E2E Test Scripts with `/tas-e2e-web`, `/tas-e2e-mobile`
172
- - **PE**: Create Bug Report with `/tas-bug`
173
-
174
- #### Phase 4: Quality & Deploy
175
- - **DSE**: Security Review with `/tas-security`
176
- - **PE**: Run Pipeline/CLI to execute Automation Tests
177
- - **DSE**: Deploy to Production
178
-
179
- ---
180
-
181
- ## Quick Start
182
-
183
- ```bash
184
- npx @torus-engineering/tas-kit install
185
- ```
186
-
187
- ### Options
188
-
189
- ```bash
190
- npx @torus-engineering/tas-kit install --directory /path/to/my-project
191
- npx @torus-engineering/tas-kit install --yes # skip confirmation prompts
192
- ```
193
-
194
- ---
195
-
196
- ## Important Setup
197
-
198
- ### CLAUDE.md
199
-
200
- Most important configuration file — Claude reads this file first in every session.
201
-
202
- **Structure:**
203
- ```markdown
204
- # Project Name
205
-
206
- ## Tech Stack
207
- - Backend: .NET / Node.js / Python
208
- - Frontend: React / Next.js
209
- - Database: PostgreSQL / MySQL
210
- - Infrastructure: AWS / Azure
211
-
212
- ## Conventions
213
- - Coding standards
214
- - Architecture patterns
215
- - Testing requirements
216
- ```
217
-
218
- ### tas.yaml
219
-
220
- Controls TAS Kit flow per project.
221
-
222
- **Structure:**
223
- ```yaml
224
- project:
225
- name: "My Project"
226
- team: "Team Name"
227
-
228
- azure_devops:
229
- enabled: true
230
- organization: "org"
231
- project: "project"
232
-
233
- flow:
234
- mode: "greenfield" # or "brownfield"
235
- use_tdd: true
236
- auto_review: true
237
- ```
238
-
239
- ### project-status.yaml
240
-
241
- Project status index — automatically updated after each artifact change.
242
-
243
- **Structure:**
244
- ```yaml
245
- last_updated: 2025-01-15
246
-
247
- artifacts:
248
- prd:
249
- file: docs/prd.md
250
- status: Approved
251
- version: "1.0"
252
-
253
- epics:
254
- Epic-001:
255
- status: Active
256
- features:
257
- Feature-001:
258
- stories:
259
- Story-001:
260
- status: In Progress
261
- ```
262
-
263
- ### .env
264
-
265
- Environment variables for Azure DevOps integration.
266
-
267
- ```bash
268
- AZURE_DEVOPS_PAT=your_pat_here
269
- AZURE_DEVOPS_ORG=your_org
270
- AZURE_DEVOPS_PROJECT=your_project
271
- ```
272
-
273
- ---
274
-
275
- ## What gets installed
276
-
277
- ```
278
- .claude/
279
- commands/ 22 slash commands (/tas-*, /ado-*)
280
- skills/ 3 auto-invoked skills
281
- agents/ 29 specialized subagents
282
- .tas/
283
- templates/ Markdown templates (PRD, SAD, ADR, Epic, Feature, Story...)
284
- rules/ Coding standards + workflow rules (code-review, story-done, security...)
285
- tools/ ADO integration script (tas-ado.py)
286
- CLAUDE.md Project context template (edit this for your project)
287
- tas.yaml Flow configuration template (edit this for your project)
288
- .env.example Environment variable template
289
- ```
290
-
291
- ---
292
-
293
- ## Commands Reference
294
-
295
- | Command | Description | Role |
296
- |---------|-------------|------|
297
- | `/tas-init` | Initialize TAS for new project | All |
298
- | `/tas-status` | Display current project status | All |
299
- | `/tas-prd` | Create/update Product Requirements Document | PE |
300
- | `/tas-sad` | Create/update Solution Architecture Document | SE |
301
- | `/tas-adr` | Create Architecture Decision Record | SE |
302
- | `/tas-design` | Create Design Specification | SE |
303
- | `/tas-epic` | Create/update Epic | SE |
304
- | `/tas-feature` | Create/update Feature | SE |
305
- | `/tas-story` | Create/update Story | SE |
306
- | `/tas-functest` | Create Functional Testing Specification | SE |
307
- | `/tas-spec` | Lightweight spec (solo / prototype) | SE |
308
- | `/tas-plan` | Create technical implementation plan | SE |
309
- | `/tas-dev` | Implement story (agentic) | AI |
310
- | `/tas-fix` | Quick fix without full story flow | SE |
311
- | `/tas-apitest` | Create API Testing Script automatically | SE |
312
- | `/tas-e2e` | Create E2E Test Scenarios | PE |
313
- | `/tas-functest-web` | Create Functional Test Script for Web | SE |
314
- | `/tas-functest-mobile` | Create Functional Test Script for Mobile | SE |
315
- | `/tas-e2e-web` | Create E2E Test Script for Web | PE |
316
- | `/tas-e2e-mobile` | Create E2E Test Script for Mobile | PE |
317
- | `/tas-bug` | Create Bug Report | PE |
318
- | `/tas-review` | Code Review with checklist | SE |
319
- | `/tas-brainstorm` | Brainstorm solutions | All |
320
- | `/tas-security` | Security Review | DSE |
321
- | `/ado-*` | Azure DevOps integration | All |
322
-
323
- ---
324
-
325
- ## Requirements
326
-
327
- - Node.js 18+
328
- - [Claude Code](https://claude.ai/code)
329
-
330
- ---
331
-
332
- ## Documentation
333
-
334
- See `.tas/README.md` after install for detailed documentation.
@@ -1,35 +0,0 @@
1
- # /tas-epic $ARGUMENTS
2
-
3
- Role: PE - Product Engineer
4
- Create or update Epic document.
5
-
6
- ## Prerequisite
7
- - docs/prd.md must exist
8
-
9
- ## Actions
10
- 1. Need context from root/tas.yaml and docs/prd.md
11
- 2. Need context from .tas/templates/Epic.md
12
- 3. Determine mode based on $ARGUMENTS:
13
-
14
- ### CREATE mode ($ARGUMENTS is new Epic description, or no $ARGUMENTS):
15
- 4. If no $ARGUMENTS, ask user for Epic description.
16
- 5. Read project.code from root/tas.yaml. Scan docs/epics/ to determine sequence number.
17
- 6. Create directory docs/epics/{code}-Epic-{NNN}-{slug}/
18
- 7. Create file docs/epics/{code}-Epic-{NNN}-{slug}/{code}-Epic-{NNN}-{slug}.md
19
- 8. Update `project-status.yaml` per `.tas/rules/common/project-status.md` — add entry to `epics`.
20
-
21
- ### UPDATE mode ($ARGUMENTS is Epic ID, e.g., "Epic-001"):
22
- 4. Find directory docs/epics/{code}-Epic-001-*/
23
- 5. Need context from current Epic file
24
- 6. Ask user what needs changing (update scope, add feature, change status...)
25
- 7. Update file, add changelog
26
- 8. Update `project-status.yaml` per `.tas/rules/common/project-status.md` — update `epics.{EPIC_ID}.status`.
27
-
28
- ## Principles
29
- - Each Epic maps to one business capability in PRD
30
- - Epic does NOT contain technical details, only business value
31
- - Effort estimation at T-shirt size level: S/M/L/XL
32
-
33
- ## Final Step — Token Log
34
-
35
- Follow `.tas/rules/common/token-logging.md`: write AI Usage Log to working Epic file.
@@ -1,91 +0,0 @@
1
- # /tas-story $ARGUMENTS
2
-
3
- Role: PE - Product Engineer
4
- Create or update User Story document.
5
-
6
- **Scope:** Business logic, user experience, acceptance criteria, test cases.
7
- **Out of scope:** Technical implementation, files to modify, database schema — that's `/tas-plan`'s job.
8
-
9
- ## Always / Ask / Never
10
-
11
- | | Action |
12
- |---|---|
13
- | **Always** | Write AC in Given/When/Then format |
14
- | **Always** | Set `plan_status: pending` for new Story |
15
- | **Ask** | When Story > 8h — suggest splitting |
16
- | **Never** | Read SAD, ADR — technical is `/tas-plan`'s job |
17
-
18
- ## Prerequisite
19
- - At least one Feature must exist
20
-
21
- ## Actions
22
-
23
- ### CREATE mode ($ARGUMENTS is new Story description, or no $ARGUMENTS)
24
-
25
- **Step 1 — Identify Feature**
26
- - Read `project.code` from root/`tas.yaml`
27
- - Prioritize in order:
28
- 1. If `$ARGUMENTS` contains Feature ID → use it
29
- 2. If context has `parent_id` → use it
30
- 3. Ask user: "Which Feature does this Story belong to?" — no directory scan
31
-
32
- **Step 2 — Gather business context**
33
- - Read identified Feature file (get business context, scope, existing Stories list)
34
- - Read PRD (if exists) — only business requirements, user goals
35
-
36
- **Step 3 — Determine Story ID**
37
- - Read Stories section in Feature file → determine next index from that list
38
- - DO NOT scan directory
39
-
40
- **Step 4 — Draft Story with user**
41
-
42
- Discuss to fill in:
43
-
44
- a) **User Story**: "As a [role], I want [goal], so that [benefit]"
45
-
46
- b) **Business Requirements** (if any): specific business rules, stakeholder constraints
47
-
48
- c) **Design Notes** (if any): UI/UX specs, mockup links, flow diagrams
49
-
50
- d) **Prerequisites** (if any): other Stories that must be done first
51
-
52
- e) **Acceptance Criteria**: each AC is a clear Given/When/Then scenario
53
-
54
- **Step 5 — Test Case Prompting**
55
-
56
- After AC confirmed, ask more:
57
- - "Besides happy path, any edge cases to test?" (empty input, boundary values, concurrent)
58
- - "Any negative cases to cover?" (unauthorized, invalid data, timeout, not found)
59
- - "Any external dependencies to mock when testing?" (external APIs, database state)
60
-
61
- Write all to `## Unit Test Cases` section.
62
-
63
- **Step 6 — Create file**
64
- - Read `.tas/templates/Story.md` for format
65
- - Create `docs/epics/{code}-Epic-{NNN}-{slug}/{code}-Feature-{NNN}-{slug}/{code}-Story-{NNN}-{slug}.md`
66
- - Frontmatter: `plan_status: pending`, `plan_date:` left empty
67
-
68
- **Step 7 — Update project-status.yaml**
69
- Per `.tas/rules/common/project-status.md` — add entry to `epics.{EPIC_ID}.features.{FEATURE_ID}.stories`.
70
-
71
- **Step 8 — Notify next step**
72
- > "Story created. Before SE starts coding, run `/tas-plan {Story-ID}` for technical planning."
73
-
74
- ---
75
-
76
- ### UPDATE mode ($ARGUMENTS is Story ID, e.g., "Story-005")
77
-
78
- 1. Find file via glob `docs/epics/**/{code}-Story-{ID}-*.md`
79
- 2. Read current Story file
80
- 3. Ask user what needs changing (update AC, change status, add test cases, fix business rule...)
81
- 4. Update file, add entry to Changelog
82
- 5. Update `project-status.yaml` per `.tas/rules/common/project-status.md`.
83
-
84
- ## Principles
85
- - Story must be small enough to complete in **4-8 hours**; if larger → split into multiple Stories
86
- - Story file = **product artifact**: describes *what* and *why*, not *how*
87
- - Story status: New → Committed → In Progress → Deploy Test → Verify Test → Deploy Stag → Verify Stag → Deploy Prod → Verify Prod → Done
88
-
89
- ## Final Step — Token Log
90
-
91
- Follow `.tas/rules/common/token-logging.md`: write AI Usage Log to working Story file.
@@ -1,30 +0,0 @@
1
- # Definition of Done
2
-
3
- Workflow gate used by `/tas-dev` Step 5 — verify each item before marking Story complete.
4
-
5
- ## Code
6
-
7
- - [ ] Code implemented per acceptance criteria
8
- - [ ] Follows conventions in CLAUDE.md
9
- - [ ] Each public method has doc comment (XML doc / JSDoc / docstring)
10
-
11
- ## Testing
12
-
13
- - [ ] Unit tests pass (happy path + edge cases + negative cases)
14
- - [ ] No regression on existing tests
15
-
16
- ## Review
17
-
18
- - [ ] Code review passed (per `.tas/rules/common/code-review.md`)
19
- - [ ] If `auto_review = true`, passed automated review
20
-
21
- ## Documentation
22
-
23
- - [ ] Technical notes in Story updated
24
- - [ ] If API changes, corresponding docs updated
25
-
26
- ## Status
27
-
28
- - [ ] Story status updated in Story file
29
- - [ ] `project-status.yaml` updated
30
- - [ ] Commit message follows correct format
@@ -1,46 +0,0 @@
1
- ---
2
- ado_id:
3
- ado_type: Epic
4
- ado_title: "{Title}"
5
- ado_state: New
6
- ado_assigned_to:
7
- ado_created:
8
- last_ado_sync:
9
- ---
10
- # Epic-{NNN}: {Title}
11
-
12
- > **Status:** New | Pending | In Design | In Progress | In Monitoring | In Closing | Done | Removed
13
- > **Owner:** {PE name}
14
- > **Created:** {Date}
15
- > **PRD Reference:** {link to PRD section}
16
-
17
- ## Business Value
18
- {Business value description}
19
-
20
- ## Scope
21
- ### In Scope
22
- - Item 1
23
- - Item 2
24
-
25
- ### Out of Scope
26
- - Item 1
27
-
28
- ## Acceptance Criteria (High-level)
29
- - [ ] Criteria 1
30
- - [ ] Criteria 2
31
-
32
- ## Features
33
- | ID | Feature | Priority | Estimate |
34
- |----|---------|----------|----------|
35
- | Feature-001 | {name} | Must | M |
36
- | Feature-002 | {name} | Should | L |
37
-
38
- ## Dependencies
39
- - {dependency 1}
40
-
41
- ## Risks
42
- - {risk 1}
43
-
44
- ## Changelog
45
- | Date | Changes | Author |
46
- |------|---------|--------|
@@ -1,90 +0,0 @@
1
- ---
2
- ado_id:
3
- ado_type: User Story
4
- ado_title: "{Title}"
5
- ado_state: New
6
- ado_assigned_to:
7
- ado_created:
8
- last_ado_sync:
9
- parent_ado_id:
10
- plan_status: pending
11
- plan_date:
12
- ---
13
- # Story-{NNN}: {Title}
14
-
15
- > **Status:** New | Committed | In Progress | Deploy Test | Verify Test | Deploy Stag | Verify Stag | Deploy Prod | Verify Prod | Done
16
- > **Feature:** Feature-{NNN}
17
- > **Assigned to:** {SE name}
18
- > **Estimate:** {S/M/L}
19
- > **Created:** {Date}
20
-
21
- ## User Story
22
- As a {role}, I want {goal}, so that {benefit}.
23
-
24
- ---
25
- ## Business Requirements (if any)
26
- *(Special business requirements, business rules, constraints from stakeholders — add only when needed)*
27
-
28
- ---
29
- ## Design Notes (if any)
30
- *(UI/UX specs, mockup links, design decisions, flow diagrams — add only when needed)*
31
-
32
- ---
33
- ## Prerequisites (if any)
34
- *(Dependencies from other Stories or required conditions — add only when needed)*
35
-
36
- ---
37
- ## Acceptance Criteria
38
-
39
- ### AC-1: {title}
40
- - **Given** {precondition}
41
- - **When** {action}
42
- - **Then** {expected result}
43
- - **Functional Tests**: *(fill FT IDs after running `/tas-functest` — e.g.: `{PROJECT}_E{EPIC}_F{FEATURE}_S{STORY}_FT_001_H`, `FT_002_N`)*
44
-
45
- ### AC-2: {title}
46
- - **Given** {precondition}
47
- - **When** {action}
48
- - **Then** {expected result}
49
- - **Functional Tests**: *(fill FT IDs after running `/tas-functest`)*
50
-
51
- ---
52
- ## Unit Test Cases
53
- *(PE designs happy path + edge cases + negative cases. SE implements in code.)*
54
-
55
- ### Happy Path
56
- | ID | AC Ref | Description | Input | Expected Output |
57
- |----|--------|-------------|-------|-----------------|
58
- | UT-1 | AC-1 | {description} | {input} | {expected} |
59
-
60
- ### Edge Cases
61
- | ID | AC Ref | Description | Input | Expected Output |
62
- |----|--------|-------------|-------|-----------------|
63
- | UT-E1 | AC-1 | {description} | {input} | {expected} |
64
-
65
- ### Negative Cases
66
- | ID | AC Ref | Description | Input | Expected Output |
67
- |----|--------|-------------|-------|-----------------|
68
- | UT-N1 | AC-1 | {description} | {input} | {expected} |
69
-
70
- ### Dependencies to Mock
71
- - {external API, database state, third-party service...}
72
-
73
- ---
74
- <!-- ═══════════════════════════════════════════════════════════════════
75
- TECHNICAL PLAN — generated by /tas-plan, do not edit manually
76
- ═══════════════════════════════════════════════════════════════════ -->
77
-
78
- ---
79
- ## Definition of Done
80
- - [ ] Technical plan completed (`/tas-plan`)
81
- - [ ] Code implemented
82
- - [ ] Unit tests pass
83
- - [ ] Code review passed
84
- - [ ] Acceptance criteria verified
85
- - [ ] No regression
86
- - [ ] Documentation updated (if needed)
87
-
88
- ## Changelog
89
- | Date | Changes | Author |
90
- |------|---------|--------|