@torus-engineering/tas-kit 1.14.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 (99) 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 +131 -54
  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 -546
  94. package/package.json +1 -1
  95. package/.tas/commands/tas-epic.md +0 -35
  96. package/.tas/commands/tas-story.md +0 -91
  97. package/.tas/rules/common/story-done.md +0 -30
  98. package/.tas/templates/Epic.md +0 -46
  99. package/.tas/templates/Story.md +0 -90
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@torus-engineering/tas-kit",
3
- "version": "1.14.0",
3
+ "version": "2.1.0",
4
4
  "description": "TAS Kit - Turbo Agentic SDLC toolkit for modern AI-first software teams.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -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
- |------|---------|--------|