@torus-engineering/tas-kit 1.11.1 → 1.13.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/.tas/README.md +334 -334
- package/{.claude → .tas/_platform/claude-code}/settings.json +0 -12
- package/{.claude → .tas/_platform}/hooks/code-quality.js +1 -1
- package/{.claude → .tas/_platform}/hooks/session-end.js +20 -25
- package/{.claude → .tas}/commands/ado-create.md +5 -4
- package/{.claude → .tas}/commands/ado-delete.md +5 -4
- package/{.claude → .tas}/commands/ado-update.md +5 -4
- package/{.claude → .tas}/commands/tas-adr.md +3 -3
- package/{.claude → .tas}/commands/tas-apitest-plan.md +2 -2
- package/{.claude → .tas}/commands/tas-apitest.md +4 -4
- package/{.claude → .tas}/commands/tas-bug.md +6 -6
- package/{.claude → .tas}/commands/tas-design.md +3 -3
- package/{.claude → .tas}/commands/tas-dev.md +11 -14
- package/{.claude → .tas}/commands/tas-epic.md +3 -3
- package/{.claude → .tas}/commands/tas-feature.md +4 -4
- package/{.claude → .tas}/commands/tas-fix.md +5 -5
- package/{.claude → .tas}/commands/tas-init.md +1 -1
- package/{.claude → .tas}/commands/tas-plan.md +198 -198
- package/{.claude → .tas}/commands/tas-prd.md +3 -3
- package/{.claude → .tas}/commands/tas-review.md +17 -15
- package/{.claude → .tas}/commands/tas-sad.md +3 -3
- package/{.claude → .tas}/commands/tas-security.md +4 -4
- package/{.claude → .tas}/commands/tas-story.md +3 -3
- package/.tas/platforms.json +5 -0
- package/.tas/project-status-example.yaml +17 -17
- package/{.claude/skills/ado-integration/SKILL.md → .tas/rules/ado-integration.md} +5 -15
- package/{.claude/skills/api-design/SKILL.md → .tas/rules/common/api-design.md} +517 -530
- package/{.claude → .tas}/rules/common/code-review.md +30 -6
- package/{.claude/rules/common/post-review-agent.md → .tas/rules/common/post-implementation-review.md} +51 -49
- package/{.claude → .tas}/rules/common/project-status.md +80 -80
- package/{.claude → .tas}/rules/common/stack-detection.md +29 -29
- package/.tas/{checklists → rules/common}/story-done.md +12 -5
- package/{.claude/skills/tas-tdd/SKILL.md → .tas/rules/common/tdd.md} +4 -38
- package/{.claude → .tas}/rules/common/testing.md +3 -8
- package/{.claude → .tas}/rules/common/token-logging.md +36 -27
- package/{.claude → .tas}/rules/csharp/api-testing.md +171 -171
- package/{.claude → .tas}/rules/csharp/coding-style.md +0 -2
- package/{.claude → .tas}/rules/csharp/security.md +10 -0
- package/{.claude → .tas}/rules/python/coding-style.md +0 -2
- package/{.claude → .tas}/rules/typescript/coding-style.md +0 -2
- package/.tas/rules/typescript/patterns.md +142 -0
- package/.tas/rules/typescript/security.md +88 -0
- package/{.claude → .tas}/rules/typescript/testing.md +0 -4
- package/{.claude → .tas}/rules/web/coding-style.md +0 -2
- package/.tas/tas-example.yaml +125 -126
- package/.tas/templates/ADR.md +47 -47
- package/.tas/templates/Bug.md +67 -67
- package/.tas/templates/Design-Spec.md +36 -36
- package/.tas/templates/Epic.md +46 -46
- package/.tas/templates/Feature.md +1 -1
- package/.tas/templates/Security-Report.md +27 -27
- package/.tas/tools/tas-ado-readme.md +169 -169
- package/.tas/tools/tas-ado.py +621 -621
- package/README.md +334 -334
- package/bin/cli.js +91 -73
- package/lib/adapters/antigravity.js +131 -0
- package/lib/adapters/claude-code.js +35 -0
- package/lib/adapters/codex.js +157 -0
- package/lib/adapters/cursor.js +80 -0
- package/lib/adapters/index.js +20 -0
- package/lib/adapters/utils.js +81 -0
- package/lib/deleted-files.json +99 -0
- package/lib/install.js +543 -327
- package/package.json +5 -4
- package/.claude/agents/code-reviewer.md +0 -41
- package/.claude/agents/e2e-runner.md +0 -61
- package/.claude/agents/planner.md +0 -82
- package/.claude/agents/tdd-guide.md +0 -84
- package/.claude/commands/tas-verify.md +0 -51
- package/.claude/rules/typescript/patterns.md +0 -62
- package/.claude/rules/typescript/security.md +0 -28
- package/.claude/settings.local.json +0 -38
- package/.claude/skills/ai-regression-testing/SKILL.md +0 -364
- package/.claude/skills/architecture-decision-records/SKILL.md +0 -184
- package/.claude/skills/benchmark/SKILL.md +0 -98
- package/.claude/skills/browser-qa/SKILL.md +0 -92
- package/.claude/skills/canary-watch/SKILL.md +0 -104
- package/.claude/skills/js-backend-patterns/SKILL.md +0 -603
- package/.claude/skills/tas-conventions/SKILL.md +0 -65
- package/.claude/skills/tas-implementation-complete/SKILL.md +0 -100
- package/.claude/skills/token-logger/SKILL.md +0 -19
- package/.tas/checklists/code-review.md +0 -29
- package/.tas/checklists/security.md +0 -21
- /package/{.claude → .tas}/agents/architect.md +0 -0
- /package/{.claude → .tas}/agents/aws-reviewer.md +0 -0
- /package/{.claude → .tas}/agents/build-resolver.md +0 -0
- /package/{.claude → .tas}/agents/code-explorer.md +0 -0
- /package/{.claude → .tas}/agents/csharp-reviewer.md +0 -0
- /package/{.claude → .tas}/agents/database-reviewer.md +0 -0
- /package/{.claude → .tas}/agents/doc-updater.md +0 -0
- /package/{.claude → .tas}/agents/python-reviewer.md +0 -0
- /package/{.claude → .tas}/agents/security-reviewer.md +0 -0
- /package/{.claude → .tas}/agents/typescript-reviewer.md +0 -0
- /package/{.claude → .tas}/commands/ado-get.md +0 -0
- /package/{.claude → .tas}/commands/ado-status.md +0 -0
- /package/{.claude → .tas}/commands/tas-brainstorm.md +0 -0
- /package/{.claude → .tas}/commands/tas-e2e-mobile.md +0 -0
- /package/{.claude → .tas}/commands/tas-e2e-web.md +0 -0
- /package/{.claude → .tas}/commands/tas-e2e.md +0 -0
- /package/{.claude → .tas}/commands/tas-functest-mobile.md +0 -0
- /package/{.claude → .tas}/commands/tas-functest-web.md +0 -0
- /package/{.claude → .tas}/commands/tas-functest.md +0 -0
- /package/{.claude → .tas}/commands/tas-spec.md +0 -0
- /package/{.claude → .tas}/commands/tas-status.md +0 -0
- /package/{.claude → .tas}/rules/.gitkeep +0 -0
- /package/{.claude → .tas}/rules/common/hooks.md +0 -0
- /package/{.claude → .tas}/rules/common/patterns.md +0 -0
- /package/{.claude → .tas}/rules/common/security.md +0 -0
- /package/{.claude → .tas}/rules/csharp/hooks.md +0 -0
- /package/{.claude → .tas}/rules/csharp/patterns.md +0 -0
- /package/{.claude → .tas}/rules/csharp/testing.md +0 -0
- /package/{.claude → .tas}/rules/python/hooks.md +0 -0
- /package/{.claude → .tas}/rules/python/patterns.md +0 -0
- /package/{.claude → .tas}/rules/python/security.md +0 -0
- /package/{.claude → .tas}/rules/python/testing.md +0 -0
- /package/{.claude → .tas}/rules/typescript/hooks.md +0 -0
- /package/{.claude → .tas}/rules/web/design-quality.md +0 -0
- /package/{.claude → .tas}/rules/web/hooks.md +0 -0
- /package/{.claude → .tas}/rules/web/patterns.md +0 -0
- /package/{.claude → .tas}/rules/web/performance.md +0 -0
- /package/{.claude → .tas}/rules/web/security.md +0 -0
- /package/{.claude → .tas}/rules/web/testing.md +0 -0
- /package/{CLAUDE-Example.md → .tas/templates/AGENTS.md} +0 -0
package/.tas/tas-example.yaml
CHANGED
|
@@ -1,126 +1,125 @@
|
|
|
1
|
-
# .tas/tas-example.yaml - Reference template for tas.yaml at root
|
|
2
|
-
# Copy this file to root (tas.yaml) and fill in project information.
|
|
3
|
-
# This file ONLY contains TAS flow and logic.
|
|
4
|
-
# Tech stack, coding conventions, build commands belong in CLAUDE.md.
|
|
5
|
-
|
|
6
|
-
project:
|
|
7
|
-
name: "My Project"
|
|
8
|
-
code: "PROJ" # Prefix for file naming: PROJ-Epic-001, PROJ-Feature-001, etc.
|
|
9
|
-
type: greenfield # greenfield | brownfield
|
|
10
|
-
description: "Brief project description"
|
|
11
|
-
|
|
12
|
-
# Azure DevOps integration
|
|
13
|
-
ado:
|
|
14
|
-
enabled: true # false if project doesn't use ADO
|
|
15
|
-
organization: "https://dev.azure.com/torus-engineering"
|
|
16
|
-
project_id: "f80dac23-9fa5-4b8e-a1db-da4d5aea7b31"
|
|
17
|
-
|
|
18
|
-
team:
|
|
19
|
-
- name: "Nguyen Van A"
|
|
20
|
-
role: pe
|
|
21
|
-
ado_id: "nguyenvana@torus.vn"
|
|
22
|
-
- name: "Tran Van B"
|
|
23
|
-
role: se
|
|
24
|
-
ado_id: "tranvanb@torus.vn"
|
|
25
|
-
- name: "Le Van C"
|
|
26
|
-
role: dse
|
|
27
|
-
ado_id: "levanc@torus.vn"
|
|
28
|
-
|
|
29
|
-
# Flow configuration
|
|
30
|
-
workflow:
|
|
31
|
-
# Phase 0: Discovery & Design (Human-led, AI-powered)
|
|
32
|
-
discovery:
|
|
33
|
-
enabled: true
|
|
34
|
-
lead: pe
|
|
35
|
-
artifacts:
|
|
36
|
-
- prd
|
|
37
|
-
- design_spec
|
|
38
|
-
- sad
|
|
39
|
-
- adr
|
|
40
|
-
- epic
|
|
41
|
-
- feature
|
|
42
|
-
- story
|
|
43
|
-
gate: ready_for_development
|
|
44
|
-
|
|
45
|
-
# Phase 1: Develop (Orchestrated Agentic)
|
|
46
|
-
develop:
|
|
47
|
-
enabled: true
|
|
48
|
-
lead: se
|
|
49
|
-
environment: test
|
|
50
|
-
use_tdd: true
|
|
51
|
-
auto_review: true
|
|
52
|
-
|
|
53
|
-
# Phase 2: Verify (Agentic + PE Review)
|
|
54
|
-
verify:
|
|
55
|
-
enabled: true
|
|
56
|
-
lead: pe
|
|
57
|
-
environment: staging
|
|
58
|
-
auto_integration_test: true
|
|
59
|
-
gate: pe_approved
|
|
60
|
-
|
|
61
|
-
# Phase 3: Deploy with Feature Flag (Agentic)
|
|
62
|
-
deploy:
|
|
63
|
-
enabled: true
|
|
64
|
-
lead: dse
|
|
65
|
-
environment: production
|
|
66
|
-
feature_flag: true
|
|
67
|
-
gate: pe_approved_production
|
|
68
|
-
|
|
69
|
-
# Phase 4: Operate (Autonomous)
|
|
70
|
-
operate:
|
|
71
|
-
enabled: false
|
|
72
|
-
lead: dse
|
|
73
|
-
environment: production
|
|
74
|
-
security_check: true
|
|
75
|
-
performance_monitor: true
|
|
76
|
-
|
|
77
|
-
# Brownfield-specific config
|
|
78
|
-
brownfield:
|
|
79
|
-
existing_docs_path: "docs/"
|
|
80
|
-
codebase_scan_on_init: true
|
|
81
|
-
|
|
82
|
-
# Pre-commit security hook (installed via tas-kit install --security-hook=husky|native)
|
|
83
|
-
# See .tas/hooks/README.md for details
|
|
84
|
-
#
|
|
85
|
-
# 3-tier scan:
|
|
86
|
-
# Tier 1 (always): built-in regex scan for ~45 secret patterns — blocks
|
|
87
|
-
# Tier 2 (if on PATH): gitleaks / trufflehog — only runs if installed — blocks
|
|
88
|
-
# Tier 3 (opt-in, LOCAL ONLY): AI deep scan → writes docs/security-report.md;
|
|
89
|
-
# does NOT block. Use a personal Claude Code
|
|
90
|
-
# subscription (no API charges). Not for CI.
|
|
91
|
-
security:
|
|
92
|
-
pre_commit_hook: true # master switch; false to disable without uninstalling
|
|
93
|
-
external_scanner: auto # auto | gitleaks | trufflehog | none — tier 2
|
|
94
|
-
tool: claude # claude | codex | gemini | none — tier 3 AI (report-only)
|
|
95
|
-
deep_scan_on_every_commit: false # true = opt into tier 3 AI review each local commit
|
|
96
|
-
block_on: [critical, high] # severities that block commit (tier 1 & 2 only)
|
|
97
|
-
allow_bypass: true # print hint about SKIP_SECURITY_SCAN / --no-verify
|
|
98
|
-
|
|
99
|
-
# Template overrides (optional)
|
|
100
|
-
templates:
|
|
101
|
-
sad: ".tas/templates/SAD.md"
|
|
102
|
-
adr: ".tas/templates/ADR.md"
|
|
103
|
-
prd: ".tas/templates/PRD.md"
|
|
104
|
-
epic: ".tas/templates/Epic.md"
|
|
105
|
-
feature: ".tas/templates/Feature.md"
|
|
106
|
-
story: ".tas/templates/Story.md"
|
|
107
|
-
bug: ".tas/templates/Bug.md"
|
|
108
|
-
|
|
109
|
-
# Model mapping
|
|
110
|
-
models:
|
|
111
|
-
default: sonnet
|
|
112
|
-
commands:
|
|
113
|
-
tas-prd: sonnet
|
|
114
|
-
tas-design: sonnet
|
|
115
|
-
tas-sad: opus
|
|
116
|
-
tas-adr: opus
|
|
117
|
-
tas-epic: sonnet
|
|
118
|
-
tas-feature: sonnet
|
|
119
|
-
tas-story: sonnet
|
|
120
|
-
tas-dev: sonnet
|
|
121
|
-
tas-review
|
|
122
|
-
tas-brainstorm: opus
|
|
123
|
-
tas-bug: sonnet
|
|
124
|
-
tas-
|
|
125
|
-
tas-
|
|
126
|
-
tas-security-check: opus
|
|
1
|
+
# .tas/tas-example.yaml - Reference template for tas.yaml at root
|
|
2
|
+
# Copy this file to root (tas.yaml) and fill in project information.
|
|
3
|
+
# This file ONLY contains TAS flow and logic.
|
|
4
|
+
# Tech stack, coding conventions, build commands belong in CLAUDE.md.
|
|
5
|
+
|
|
6
|
+
project:
|
|
7
|
+
name: "My Project"
|
|
8
|
+
code: "PROJ" # Prefix for file naming: PROJ-Epic-001, PROJ-Feature-001, etc.
|
|
9
|
+
type: greenfield # greenfield | brownfield
|
|
10
|
+
description: "Brief project description"
|
|
11
|
+
|
|
12
|
+
# Azure DevOps integration
|
|
13
|
+
ado:
|
|
14
|
+
enabled: true # false if project doesn't use ADO
|
|
15
|
+
organization: "https://dev.azure.com/torus-engineering"
|
|
16
|
+
project_id: "f80dac23-9fa5-4b8e-a1db-da4d5aea7b31"
|
|
17
|
+
|
|
18
|
+
team:
|
|
19
|
+
- name: "Nguyen Van A"
|
|
20
|
+
role: pe
|
|
21
|
+
ado_id: "nguyenvana@torus.vn"
|
|
22
|
+
- name: "Tran Van B"
|
|
23
|
+
role: se
|
|
24
|
+
ado_id: "tranvanb@torus.vn"
|
|
25
|
+
- name: "Le Van C"
|
|
26
|
+
role: dse
|
|
27
|
+
ado_id: "levanc@torus.vn"
|
|
28
|
+
|
|
29
|
+
# Flow configuration
|
|
30
|
+
workflow:
|
|
31
|
+
# Phase 0: Discovery & Design (Human-led, AI-powered)
|
|
32
|
+
discovery:
|
|
33
|
+
enabled: true
|
|
34
|
+
lead: pe
|
|
35
|
+
artifacts:
|
|
36
|
+
- prd
|
|
37
|
+
- design_spec
|
|
38
|
+
- sad
|
|
39
|
+
- adr
|
|
40
|
+
- epic
|
|
41
|
+
- feature
|
|
42
|
+
- story
|
|
43
|
+
gate: ready_for_development
|
|
44
|
+
|
|
45
|
+
# Phase 1: Develop (Orchestrated Agentic)
|
|
46
|
+
develop:
|
|
47
|
+
enabled: true
|
|
48
|
+
lead: se
|
|
49
|
+
environment: test
|
|
50
|
+
use_tdd: true
|
|
51
|
+
auto_review: true
|
|
52
|
+
|
|
53
|
+
# Phase 2: Verify (Agentic + PE Review)
|
|
54
|
+
verify:
|
|
55
|
+
enabled: true
|
|
56
|
+
lead: pe
|
|
57
|
+
environment: staging
|
|
58
|
+
auto_integration_test: true
|
|
59
|
+
gate: pe_approved
|
|
60
|
+
|
|
61
|
+
# Phase 3: Deploy with Feature Flag (Agentic)
|
|
62
|
+
deploy:
|
|
63
|
+
enabled: true
|
|
64
|
+
lead: dse
|
|
65
|
+
environment: production
|
|
66
|
+
feature_flag: true
|
|
67
|
+
gate: pe_approved_production
|
|
68
|
+
|
|
69
|
+
# Phase 4: Operate (Autonomous)
|
|
70
|
+
operate:
|
|
71
|
+
enabled: false
|
|
72
|
+
lead: dse
|
|
73
|
+
environment: production
|
|
74
|
+
security_check: true
|
|
75
|
+
performance_monitor: true
|
|
76
|
+
|
|
77
|
+
# Brownfield-specific config
|
|
78
|
+
brownfield:
|
|
79
|
+
existing_docs_path: "docs/"
|
|
80
|
+
codebase_scan_on_init: true
|
|
81
|
+
|
|
82
|
+
# Pre-commit security hook (installed via tas-kit install --security-hook=husky|native)
|
|
83
|
+
# See .tas/hooks/README.md for details
|
|
84
|
+
#
|
|
85
|
+
# 3-tier scan:
|
|
86
|
+
# Tier 1 (always): built-in regex scan for ~45 secret patterns — blocks
|
|
87
|
+
# Tier 2 (if on PATH): gitleaks / trufflehog — only runs if installed — blocks
|
|
88
|
+
# Tier 3 (opt-in, LOCAL ONLY): AI deep scan → writes docs/security-report.md;
|
|
89
|
+
# does NOT block. Use a personal Claude Code
|
|
90
|
+
# subscription (no API charges). Not for CI.
|
|
91
|
+
security:
|
|
92
|
+
pre_commit_hook: true # master switch; false to disable without uninstalling
|
|
93
|
+
external_scanner: auto # auto | gitleaks | trufflehog | none — tier 2
|
|
94
|
+
tool: claude # claude | codex | gemini | none — tier 3 AI (report-only)
|
|
95
|
+
deep_scan_on_every_commit: false # true = opt into tier 3 AI review each local commit
|
|
96
|
+
block_on: [critical, high] # severities that block commit (tier 1 & 2 only)
|
|
97
|
+
allow_bypass: true # print hint about SKIP_SECURITY_SCAN / --no-verify
|
|
98
|
+
|
|
99
|
+
# Template overrides (optional)
|
|
100
|
+
templates:
|
|
101
|
+
sad: ".tas/templates/SAD.md"
|
|
102
|
+
adr: ".tas/templates/ADR.md"
|
|
103
|
+
prd: ".tas/templates/PRD.md"
|
|
104
|
+
epic: ".tas/templates/Epic.md"
|
|
105
|
+
feature: ".tas/templates/Feature.md"
|
|
106
|
+
story: ".tas/templates/Story.md"
|
|
107
|
+
bug: ".tas/templates/Bug.md"
|
|
108
|
+
|
|
109
|
+
# Model mapping
|
|
110
|
+
models:
|
|
111
|
+
default: sonnet
|
|
112
|
+
commands:
|
|
113
|
+
tas-prd: sonnet
|
|
114
|
+
tas-design: sonnet
|
|
115
|
+
tas-sad: opus
|
|
116
|
+
tas-adr: opus
|
|
117
|
+
tas-epic: sonnet
|
|
118
|
+
tas-feature: sonnet
|
|
119
|
+
tas-story: sonnet
|
|
120
|
+
tas-dev: sonnet
|
|
121
|
+
tas-review: opus
|
|
122
|
+
tas-brainstorm: opus
|
|
123
|
+
tas-bug: sonnet
|
|
124
|
+
tas-status: haiku
|
|
125
|
+
tas-security: opus
|
package/.tas/templates/ADR.md
CHANGED
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
# ADR-{NNN}: {Title}
|
|
2
|
-
|
|
3
|
-
> **Status:** Proposed | Accepted | Deprecated | Superseded
|
|
4
|
-
> **Date:** [Date]
|
|
5
|
-
> **Author:** [SE name]
|
|
6
|
-
> **Supersedes:** [ADR-NNN if any]
|
|
7
|
-
> **Related:** [ADR-NNN if any]
|
|
8
|
-
|
|
9
|
-
## Context
|
|
10
|
-
[Describe context leading to this decision. What problem needs solving?]
|
|
11
|
-
|
|
12
|
-
## Decision
|
|
13
|
-
[Describe the chosen architectural decision.]
|
|
14
|
-
|
|
15
|
-
## Rationale
|
|
16
|
-
[Why choose this approach? Technical and business reasons.]
|
|
17
|
-
|
|
18
|
-
## Alternatives Considered
|
|
19
|
-
|
|
20
|
-
### Alternative 1: [Name]
|
|
21
|
-
- **Pros:** [advantages]
|
|
22
|
-
- **Cons:** [disadvantages]
|
|
23
|
-
- **Why not chosen:** [explanation]
|
|
24
|
-
|
|
25
|
-
### Alternative 2: [Name]
|
|
26
|
-
- **Pros:** [advantages]
|
|
27
|
-
- **Cons:** [disadvantages]
|
|
28
|
-
- **Why not chosen:** [explanation]
|
|
29
|
-
|
|
30
|
-
## Consequences
|
|
31
|
-
|
|
32
|
-
### Positive
|
|
33
|
-
- [consequence 1]
|
|
34
|
-
- [consequence 2]
|
|
35
|
-
|
|
36
|
-
### Negative
|
|
37
|
-
- [consequence 1]
|
|
38
|
-
- [consequence 2]
|
|
39
|
-
|
|
40
|
-
### SAD Updates
|
|
41
|
-
*(List changes needed to update docs/sad.md - only add when ADR affects overall architecture)*
|
|
42
|
-
- [ ] [change 1]
|
|
43
|
-
- [ ] [change 2]
|
|
44
|
-
|
|
45
|
-
## Changelog
|
|
46
|
-
| Date | Changes | Author |
|
|
47
|
-
|------|---------|--------|
|
|
1
|
+
# ADR-{NNN}: {Title}
|
|
2
|
+
|
|
3
|
+
> **Status:** Proposed | Accepted | Deprecated | Superseded
|
|
4
|
+
> **Date:** [Date]
|
|
5
|
+
> **Author:** [SE name]
|
|
6
|
+
> **Supersedes:** [ADR-NNN if any]
|
|
7
|
+
> **Related:** [ADR-NNN if any]
|
|
8
|
+
|
|
9
|
+
## Context
|
|
10
|
+
[Describe context leading to this decision. What problem needs solving?]
|
|
11
|
+
|
|
12
|
+
## Decision
|
|
13
|
+
[Describe the chosen architectural decision.]
|
|
14
|
+
|
|
15
|
+
## Rationale
|
|
16
|
+
[Why choose this approach? Technical and business reasons.]
|
|
17
|
+
|
|
18
|
+
## Alternatives Considered
|
|
19
|
+
|
|
20
|
+
### Alternative 1: [Name]
|
|
21
|
+
- **Pros:** [advantages]
|
|
22
|
+
- **Cons:** [disadvantages]
|
|
23
|
+
- **Why not chosen:** [explanation]
|
|
24
|
+
|
|
25
|
+
### Alternative 2: [Name]
|
|
26
|
+
- **Pros:** [advantages]
|
|
27
|
+
- **Cons:** [disadvantages]
|
|
28
|
+
- **Why not chosen:** [explanation]
|
|
29
|
+
|
|
30
|
+
## Consequences
|
|
31
|
+
|
|
32
|
+
### Positive
|
|
33
|
+
- [consequence 1]
|
|
34
|
+
- [consequence 2]
|
|
35
|
+
|
|
36
|
+
### Negative
|
|
37
|
+
- [consequence 1]
|
|
38
|
+
- [consequence 2]
|
|
39
|
+
|
|
40
|
+
### SAD Updates
|
|
41
|
+
*(List changes needed to update docs/sad.md - only add when ADR affects overall architecture)*
|
|
42
|
+
- [ ] [change 1]
|
|
43
|
+
- [ ] [change 2]
|
|
44
|
+
|
|
45
|
+
## Changelog
|
|
46
|
+
| Date | Changes | Author |
|
|
47
|
+
|------|---------|--------|
|
package/.tas/templates/Bug.md
CHANGED
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
---
|
|
2
|
-
ado_id:
|
|
3
|
-
ado_type: Bug
|
|
4
|
-
ado_title: "{Title}"
|
|
5
|
-
ado_state: New
|
|
6
|
-
ado_assigned_to:
|
|
7
|
-
ado_created:
|
|
8
|
-
last_ado_sync:
|
|
9
|
-
parent_ado_id:
|
|
10
|
-
---
|
|
11
|
-
# Bug-{NNN}: {Title}
|
|
12
|
-
|
|
13
|
-
> **Status:** New | Committed | In Progress | Deploy Test | Verify Test | Deploy Stag | Verify Stag | Deploy Prod | Verify Prod | Done
|
|
14
|
-
> **Feature:** Feature-{NNN}
|
|
15
|
-
> **Severity:** Critical | High | Medium | Low
|
|
16
|
-
> **Found in:** Test | Staging | Production
|
|
17
|
-
> **Found by:** {PE/SE name}
|
|
18
|
-
> **Assigned to:** {SE name}
|
|
19
|
-
> **Created:** {Date}
|
|
20
|
-
|
|
21
|
-
## Description
|
|
22
|
-
{Brief bug description}
|
|
23
|
-
|
|
24
|
-
## Steps to Reproduce
|
|
25
|
-
1. {Step 1}
|
|
26
|
-
2. {Step 2}
|
|
27
|
-
3. {Step 3}
|
|
28
|
-
|
|
29
|
-
## Expected Behavior
|
|
30
|
-
{Expected result}
|
|
31
|
-
|
|
32
|
-
## Actual Behavior
|
|
33
|
-
{Actual result}
|
|
34
|
-
|
|
35
|
-
## Evidence
|
|
36
|
-
{Screenshots, logs, error messages}
|
|
37
|
-
|
|
38
|
-
## Root Cause Analysis
|
|
39
|
-
*SE fills when analyzing*
|
|
40
|
-
- **Root Cause:** {Root cause description}
|
|
41
|
-
- **Affected Files:** {List of related files}
|
|
42
|
-
- **Impact Scope:** {Affected functionality}
|
|
43
|
-
|
|
44
|
-
## Regression Test Cases
|
|
45
|
-
*SE designs before fixing*
|
|
46
|
-
|
|
47
|
-
| ID | Description | Input | Expected | Status |
|
|
48
|
-
|----|-------------|-------|----------|--------|
|
|
49
|
-
| RT-1 | Reproduce bug case | {input} | {expected} | - |
|
|
50
|
-
| RT-2 | Related regression | {input} | {expected} | - |
|
|
51
|
-
|
|
52
|
-
## Fix Notes
|
|
53
|
-
*SE fills after fixing*
|
|
54
|
-
- **Fix Description:** {Fix description}
|
|
55
|
-
- **Files Changed:** {List of changed files}
|
|
56
|
-
- **Commit:** {commit hash}
|
|
57
|
-
|
|
58
|
-
## Verify Notes
|
|
59
|
-
*PE fills when verifying*
|
|
60
|
-
|
|
61
|
-
| Date | Environment | Result | Verified by | Notes |
|
|
62
|
-
|------|-------------|--------|-------------|-------|
|
|
63
|
-
| {Date} | {env} | Pass/Fail | {PE name} | {notes} |
|
|
64
|
-
|
|
65
|
-
## Changelog
|
|
66
|
-
| Date | Changes | Author |
|
|
67
|
-
|------|---------|--------|
|
|
1
|
+
---
|
|
2
|
+
ado_id:
|
|
3
|
+
ado_type: Bug
|
|
4
|
+
ado_title: "{Title}"
|
|
5
|
+
ado_state: New
|
|
6
|
+
ado_assigned_to:
|
|
7
|
+
ado_created:
|
|
8
|
+
last_ado_sync:
|
|
9
|
+
parent_ado_id:
|
|
10
|
+
---
|
|
11
|
+
# Bug-{NNN}: {Title}
|
|
12
|
+
|
|
13
|
+
> **Status:** New | Committed | In Progress | Deploy Test | Verify Test | Deploy Stag | Verify Stag | Deploy Prod | Verify Prod | Done
|
|
14
|
+
> **Feature:** Feature-{NNN}
|
|
15
|
+
> **Severity:** Critical | High | Medium | Low
|
|
16
|
+
> **Found in:** Test | Staging | Production
|
|
17
|
+
> **Found by:** {PE/SE name}
|
|
18
|
+
> **Assigned to:** {SE name}
|
|
19
|
+
> **Created:** {Date}
|
|
20
|
+
|
|
21
|
+
## Description
|
|
22
|
+
{Brief bug description}
|
|
23
|
+
|
|
24
|
+
## Steps to Reproduce
|
|
25
|
+
1. {Step 1}
|
|
26
|
+
2. {Step 2}
|
|
27
|
+
3. {Step 3}
|
|
28
|
+
|
|
29
|
+
## Expected Behavior
|
|
30
|
+
{Expected result}
|
|
31
|
+
|
|
32
|
+
## Actual Behavior
|
|
33
|
+
{Actual result}
|
|
34
|
+
|
|
35
|
+
## Evidence
|
|
36
|
+
{Screenshots, logs, error messages}
|
|
37
|
+
|
|
38
|
+
## Root Cause Analysis
|
|
39
|
+
*SE fills when analyzing*
|
|
40
|
+
- **Root Cause:** {Root cause description}
|
|
41
|
+
- **Affected Files:** {List of related files}
|
|
42
|
+
- **Impact Scope:** {Affected functionality}
|
|
43
|
+
|
|
44
|
+
## Regression Test Cases
|
|
45
|
+
*SE designs before fixing*
|
|
46
|
+
|
|
47
|
+
| ID | Description | Input | Expected | Status |
|
|
48
|
+
|----|-------------|-------|----------|--------|
|
|
49
|
+
| RT-1 | Reproduce bug case | {input} | {expected} | - |
|
|
50
|
+
| RT-2 | Related regression | {input} | {expected} | - |
|
|
51
|
+
|
|
52
|
+
## Fix Notes
|
|
53
|
+
*SE fills after fixing*
|
|
54
|
+
- **Fix Description:** {Fix description}
|
|
55
|
+
- **Files Changed:** {List of changed files}
|
|
56
|
+
- **Commit:** {commit hash}
|
|
57
|
+
|
|
58
|
+
## Verify Notes
|
|
59
|
+
*PE fills when verifying*
|
|
60
|
+
|
|
61
|
+
| Date | Environment | Result | Verified by | Notes |
|
|
62
|
+
|------|-------------|--------|-------------|-------|
|
|
63
|
+
| {Date} | {env} | Pass/Fail | {PE name} | {notes} |
|
|
64
|
+
|
|
65
|
+
## Changelog
|
|
66
|
+
| Date | Changes | Author |
|
|
67
|
+
|------|---------|--------|
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
# Design Specification
|
|
2
|
-
|
|
3
|
-
> **Status:** Draft | Approved
|
|
4
|
-
> **Last Updated:** [Date]
|
|
5
|
-
> **Author:** [PE name]
|
|
6
|
-
> **PRD Reference:** docs/prd.md
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 1. Overview
|
|
11
|
-
{Design overview}
|
|
12
|
-
|
|
13
|
-
## 2. User Flows
|
|
14
|
-
<!-- Use Mermaid flowchart, :::mermaid wrapper, no () -->
|
|
15
|
-
|
|
16
|
-
## 3. Screen Descriptions
|
|
17
|
-
|
|
18
|
-
### Screen 1: {Name}
|
|
19
|
-
- **Purpose:** {purpose}
|
|
20
|
-
- **Key Elements:** {key elements}
|
|
21
|
-
- **Actions Available:** {user actions available}
|
|
22
|
-
|
|
23
|
-
## 4. Navigation Structure
|
|
24
|
-
<!-- Use Mermaid flowchart -->
|
|
25
|
-
|
|
26
|
-
## 5. Interaction Patterns
|
|
27
|
-
{Describe patterns: form submission, search, pagination...}
|
|
28
|
-
|
|
29
|
-
## 6. Responsive Behavior
|
|
30
|
-
{Describe breakpoints and behavior changes}
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## Changelog
|
|
35
|
-
| Date | Changes | Author |
|
|
36
|
-
|------|---------|--------|
|
|
1
|
+
# Design Specification
|
|
2
|
+
|
|
3
|
+
> **Status:** Draft | Approved
|
|
4
|
+
> **Last Updated:** [Date]
|
|
5
|
+
> **Author:** [PE name]
|
|
6
|
+
> **PRD Reference:** docs/prd.md
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## 1. Overview
|
|
11
|
+
{Design overview}
|
|
12
|
+
|
|
13
|
+
## 2. User Flows
|
|
14
|
+
<!-- Use Mermaid flowchart, :::mermaid wrapper, no () -->
|
|
15
|
+
|
|
16
|
+
## 3. Screen Descriptions
|
|
17
|
+
|
|
18
|
+
### Screen 1: {Name}
|
|
19
|
+
- **Purpose:** {purpose}
|
|
20
|
+
- **Key Elements:** {key elements}
|
|
21
|
+
- **Actions Available:** {user actions available}
|
|
22
|
+
|
|
23
|
+
## 4. Navigation Structure
|
|
24
|
+
<!-- Use Mermaid flowchart -->
|
|
25
|
+
|
|
26
|
+
## 5. Interaction Patterns
|
|
27
|
+
{Describe patterns: form submission, search, pagination...}
|
|
28
|
+
|
|
29
|
+
## 6. Responsive Behavior
|
|
30
|
+
{Describe breakpoints and behavior changes}
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Changelog
|
|
35
|
+
| Date | Changes | Author |
|
|
36
|
+
|------|---------|--------|
|
package/.tas/templates/Epic.md
CHANGED
|
@@ -1,46 +1,46 @@
|
|
|
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
|
+
---
|
|
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
|
+
|------|---------|--------|
|
|
@@ -43,7 +43,7 @@ PE designs when creating Feature. SE implements in code.
|
|
|
43
43
|
| IT-2 | AC-2 | {Integration flow description} | {Expected result} | - |
|
|
44
44
|
|
|
45
45
|
## E2E / Acceptance Test Cases
|
|
46
|
-
PE designs when creating Feature. PE verifies on Staging in Phase 2 using /tas-
|
|
46
|
+
PE designs when creating Feature. PE verifies on Staging in Phase 2 using /tas-functest + /tas-e2e.
|
|
47
47
|
|
|
48
48
|
| ID | AC Ref | User Scenario | Steps | Expected Result | Status | Verified Date |
|
|
49
49
|
|----|--------|---------------|-------|-----------------|--------|---------------|
|