triples-agentic 2.4.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 (77) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +326 -0
  3. package/docs/workflow.md +163 -0
  4. package/install.sh +98 -0
  5. package/package.json +54 -0
  6. package/src/agents/README.md +85 -0
  7. package/src/agents/jiwoo-prd.md +84 -0
  8. package/src/agents/kaede-backend.md +95 -0
  9. package/src/agents/kotone-flutter.md +100 -0
  10. package/src/agents/lynn-testcase.md +92 -0
  11. package/src/agents/nakyoung-tasks.md +89 -0
  12. package/src/agents/seoyeon.md +76 -0
  13. package/src/agents/shion-qa.md +89 -0
  14. package/src/agents/sohyun-ios.md +97 -0
  15. package/src/agents/yeonji-android.md +98 -0
  16. package/src/agents/yooyeon-rfc.md +82 -0
  17. package/src/agents/yubin-frontend.md +88 -0
  18. package/src/bin/setup.js +640 -0
  19. package/src/hooks/README.md +102 -0
  20. package/src/hooks/dangerous-commands.json +33 -0
  21. package/src/hooks/dangerous-commands.md +18 -0
  22. package/src/knowledge/README.md +129 -0
  23. package/src/knowledge/general/boy-scout-rule.md +13 -0
  24. package/src/knowledge/general/composition-over-inheritance.md +14 -0
  25. package/src/knowledge/general/dry.md +14 -0
  26. package/src/knowledge/general/fail-fast.md +13 -0
  27. package/src/knowledge/general/kiss.md +15 -0
  28. package/src/knowledge/general/least-surprise.md +13 -0
  29. package/src/knowledge/general/slap.md +29 -0
  30. package/src/knowledge/general/solid.md +44 -0
  31. package/src/knowledge/general/tdd.md +76 -0
  32. package/src/knowledge/general/yagni.md +12 -0
  33. package/src/knowledge/mobile/android/android-architecture.md +83 -0
  34. package/src/knowledge/mobile/android/android-platform.md +60 -0
  35. package/src/knowledge/mobile/android/kotlin-concurrency.md +75 -0
  36. package/src/knowledge/mobile/android/kotlin-core.md +88 -0
  37. package/src/knowledge/mobile/flutter/dart-async.md +93 -0
  38. package/src/knowledge/mobile/flutter/dart-core.md +97 -0
  39. package/src/knowledge/mobile/flutter/flutter-architecture.md +88 -0
  40. package/src/knowledge/mobile/flutter/flutter-platform.md +79 -0
  41. package/src/knowledge/mobile/ios/ios-architecture.md +88 -0
  42. package/src/knowledge/mobile/ios/ios-platform.md +66 -0
  43. package/src/knowledge/mobile/ios/swift-concurrency.md +99 -0
  44. package/src/knowledge/mobile/ios/swift-core.md +79 -0
  45. package/src/knowledge/planning/architecture-database.md +47 -0
  46. package/src/knowledge/planning/architecture-patterns.md +64 -0
  47. package/src/knowledge/planning/architecture-security.md +61 -0
  48. package/src/knowledge/planning/estimation.md +82 -0
  49. package/src/knowledge/planning/orchestration.md +70 -0
  50. package/src/knowledge/planning/prd-quality-gates.md +38 -0
  51. package/src/knowledge/planning/prd-writing.md +59 -0
  52. package/src/knowledge/planning/product-principles.md +48 -0
  53. package/src/knowledge/planning/product-prioritization.md +45 -0
  54. package/src/knowledge/planning/rfc-quality-gates.md +38 -0
  55. package/src/knowledge/planning/rfc-writing.md +81 -0
  56. package/src/knowledge/planning/task-decomposition.md +61 -0
  57. package/src/knowledge/planning/task-readiness.md +64 -0
  58. package/src/knowledge/quality/qa-execution.md +55 -0
  59. package/src/knowledge/quality/qa-reporting.md +71 -0
  60. package/src/knowledge/quality/test-case-quality.md +61 -0
  61. package/src/knowledge/quality/test-case-writing.md +76 -0
  62. package/src/knowledge/quality/testing-strategy.md +70 -0
  63. package/src/knowledge/quality/testing-types.md +84 -0
  64. package/src/knowledge/web/backend/api-design.md +74 -0
  65. package/src/knowledge/web/backend/api-security.md +54 -0
  66. package/src/knowledge/web/backend/backend-security.md +84 -0
  67. package/src/knowledge/web/backend/backend-structure.md +78 -0
  68. package/src/knowledge/web/frontend/frontend-components.md +49 -0
  69. package/src/knowledge/web/frontend/frontend-performance.md +41 -0
  70. package/src/knowledge/web/frontend/frontend-state.md +59 -0
  71. package/src/knowledge/web/frontend/web-accessibility.md +51 -0
  72. package/src/knowledge/web/frontend/web-performance.md +51 -0
  73. package/src/knowledge/web/frontend/web-security.md +59 -0
  74. package/src/templates/prd.md +109 -0
  75. package/src/templates/rfc.md +156 -0
  76. package/src/templates/task-breakdown.md +172 -0
  77. package/src/templates/test-case.md +157 -0
@@ -0,0 +1,109 @@
1
+ # Product Requirements Document: [Feature / Product Name]
2
+
3
+ **Author:** JiWoo (Senior PM)
4
+ **Status:** Draft | Under Review | Approved
5
+ **Date:** YYYY-MM-DD
6
+ **Version:** 1.0
7
+
8
+ ---
9
+
10
+ ## Problem Statement
11
+
12
+ > One paragraph. What specific user problem are we solving? Who experiences it? Why does it matter now?
13
+
14
+ ---
15
+
16
+ ## User Personas
17
+
18
+ ### Primary Persona: [Persona Name]
19
+ - **Role:** [Job title or user type]
20
+ - **Goals:** [What they are trying to accomplish]
21
+ - **Frustrations:** [What currently gets in their way]
22
+ - **Context:** [When and how they interact with this product]
23
+
24
+ ### Secondary Persona (if applicable): [Persona Name]
25
+ - **Role:**
26
+ - **Goals:**
27
+ - **Context:**
28
+
29
+ ---
30
+
31
+ ## Feature Scope
32
+
33
+ ### In Scope
34
+ - [Feature or capability included in this release]
35
+ - [Feature or capability included in this release]
36
+ - [Feature or capability included in this release]
37
+
38
+ ### Out of Scope
39
+ - [Feature or capability explicitly excluded — with brief reason]
40
+ - [Feature or capability explicitly excluded]
41
+
42
+ ---
43
+
44
+ ## User Stories
45
+
46
+ | ID | As a... | I want to... | So that... | Priority |
47
+ |----|---------|-------------|------------|---------|
48
+ | US-01 | [persona] | [goal] | [benefit] | P0/P1/P2 |
49
+ | US-02 | [persona] | [goal] | [benefit] | P0/P1/P2 |
50
+ | US-03 | [persona] | [goal] | [benefit] | P0/P1/P2 |
51
+
52
+ ---
53
+
54
+ ## Acceptance Criteria
55
+
56
+ ### US-01: [Story Title]
57
+ - [ ] **Given** [context], **When** [action], **Then** [specific measurable outcome]
58
+ - [ ] **Given** [context], **When** [action], **Then** [specific measurable outcome]
59
+
60
+ ### US-02: [Story Title]
61
+ - [ ] **Given** [context], **When** [action], **Then** [specific measurable outcome]
62
+
63
+ ---
64
+
65
+ ## Success Metrics
66
+
67
+ | Metric | Baseline | Target | Measurement Method |
68
+ |--------|----------|--------|-------------------|
69
+ | [Metric name] | [Current value] | [Target value] | [How to measure] |
70
+ | [Metric name] | [Current value] | [Target value] | [How to measure] |
71
+
72
+ ---
73
+
74
+ ## Non-Functional Requirements
75
+
76
+ - **Performance:** [e.g., page load < 2s on 3G; API response < 200ms p95]
77
+ - **Security:** [e.g., all data encrypted at rest and in transit]
78
+ - **Accessibility:** WCAG 2.1 AA compliance required
79
+ - **Internationalization:** [supported locales, RTL if applicable]
80
+ - **Browser/Platform Support:** [e.g., last 2 versions of Chrome, Firefox, Safari]
81
+
82
+ ---
83
+
84
+ ## Dependencies & Risks
85
+
86
+ ### Dependencies
87
+ - [System, team, or data source this depends on]
88
+ - [Third-party service required]
89
+
90
+ ### Risks
91
+ | Risk | Likelihood | Impact | Mitigation |
92
+ |------|-----------|--------|------------|
93
+ | [Risk description] | High/Med/Low | High/Med/Low | [How to mitigate] |
94
+
95
+ ---
96
+
97
+ ## Open Questions
98
+
99
+ | # | Question | Owner | Due Date |
100
+ |---|----------|-------|---------|
101
+ | 1 | [Unanswered question] | [Person responsible] | [Date] |
102
+
103
+ ---
104
+
105
+ ## Update History
106
+
107
+ | Version | Date | Changed By | Summary |
108
+ |---------|------|------------|---------|
109
+ | 1.0 | YYYY-MM-DD | JiWoo | Initial draft |
@@ -0,0 +1,156 @@
1
+ # RFC: [Feature / System Name]
2
+
3
+ **Author:** YooYeon (Staff Engineer)
4
+ **Status:** Draft | Under Review | Approved | Superseded
5
+ **Date:** YYYY-MM-DD
6
+ **Version:** 1.0
7
+ **Related PRD:** workspace/PRD.md
8
+
9
+ ---
10
+
11
+ ## Summary
12
+
13
+ > One paragraph: what is being built, using what approach, and the key trade-off explicitly accepted.
14
+
15
+ ---
16
+
17
+ ## Motivation
18
+
19
+ Why is this being built now? What problem does it solve that current systems cannot address? Reference the PRD problem statement.
20
+
21
+ ---
22
+
23
+ ## Technical Proposal
24
+
25
+ ### Architecture Overview
26
+
27
+ ```
28
+ [ASCII diagram or description of how components interact]
29
+
30
+ Client → API Gateway → [Service A] → [Database]
31
+ ↘ [Service B] → [Cache]
32
+ ```
33
+
34
+ ### Data Model
35
+
36
+ ```sql
37
+ -- Key tables / schemas / collections
38
+
39
+ CREATE TABLE users (
40
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
41
+ email TEXT NOT NULL UNIQUE,
42
+ created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
43
+ updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
44
+ );
45
+
46
+ -- [Additional entities...]
47
+ ```
48
+
49
+ ### API Contracts
50
+
51
+ ```
52
+ POST /api/v1/[resource]
53
+ Authorization: Bearer <token>
54
+ Content-Type: application/json
55
+
56
+ Request:
57
+ {
58
+ "field": "value"
59
+ }
60
+
61
+ Response 201:
62
+ {
63
+ "data": {
64
+ "id": "uuid",
65
+ "field": "value",
66
+ "createdAt": "2024-01-01T00:00:00Z"
67
+ }
68
+ }
69
+
70
+ Response 400:
71
+ {
72
+ "error": {
73
+ "code": "VALIDATION_ERROR",
74
+ "message": "field is required",
75
+ "field": "field"
76
+ }
77
+ }
78
+ ```
79
+
80
+ ### Key Algorithms / Business Logic
81
+
82
+ > Describe any non-trivial logic that needs design attention: pricing calculations, state machines, rate limiting, etc.
83
+
84
+ ### Infrastructure & Deployment
85
+
86
+ - **Hosting:** [Cloud provider, region, service type]
87
+ - **Scaling:** [How does this scale under load?]
88
+ - **Observability:** [Logs, metrics, traces — what is instrumented?]
89
+ - **Environment config:** [Environment variables required]
90
+
91
+ ---
92
+
93
+ ## Alternatives Considered
94
+
95
+ ### Alternative 1: [Name]
96
+ **Description:** What was this approach?
97
+ **Rejected because:** [Specific reason — not just "worse"]
98
+
99
+ ### Alternative 2: [Name]
100
+ **Description:** What was this approach?
101
+ **Rejected because:** [Specific reason]
102
+
103
+ ---
104
+
105
+ ## Trade-offs & Risks
106
+
107
+ | Trade-off / Risk | Impact | Mitigation |
108
+ |-----------------|--------|------------|
109
+ | [What we give up or what could go wrong] | High/Med/Low | [How we mitigate] |
110
+ | [Trade-off] | High/Med/Low | [Mitigation] |
111
+
112
+ ---
113
+
114
+ ## Migration Plan
115
+
116
+ > If this changes existing behavior or data: how do existing users/data get migrated?
117
+
118
+ 1. [Migration step]
119
+ 2. [Migration step]
120
+ 3. [Verification step]
121
+
122
+ ---
123
+
124
+ ## Rollout Plan
125
+
126
+ - **Feature flag:** [flag name — yes/no and rollout strategy]
127
+ - **Phased rollout:** [e.g., 1% → 10% → 100% with monitoring gates]
128
+ - **Rollback procedure:** [How to undo this change if it goes wrong]
129
+ - **Go-live checklist:**
130
+ - [ ] Database migration run and verified
131
+ - [ ] Feature flag configured
132
+ - [ ] Monitoring dashboards set up
133
+ - [ ] Runbook updated
134
+
135
+ ---
136
+
137
+ ## Open Questions
138
+
139
+ | # | Question | Owner | Due Date |
140
+ |---|----------|-------|---------|
141
+ | 1 | [Unresolved technical question] | [Person] | [Date] |
142
+
143
+ ---
144
+
145
+ ## References
146
+
147
+ - [Link to PRD: workspace/PRD.md]
148
+ - [External documentation, standards, or prior RFCs]
149
+
150
+ ---
151
+
152
+ ## Update History
153
+
154
+ | Version | Date | Changed By | Summary |
155
+ |---------|------|------------|---------|
156
+ | 1.0 | YYYY-MM-DD | YooYeon | Initial draft |
@@ -0,0 +1,172 @@
1
+ # Task Breakdown: [Feature / Sprint Name]
2
+
3
+ **Author:** NaKyoung (TPM)
4
+ **Date:** YYYY-MM-DD
5
+ **Related PRD:** workspace/PRD.md
6
+ **Related RFC:** workspace/RFC.md
7
+ **Sprint:** [Sprint N] | **Duration:** [X weeks]
8
+ **Total Story Points:** [sum]
9
+ **Estimated Timeline:** [X–Y weeks]
10
+
11
+ ---
12
+
13
+ ## Team Allocation
14
+
15
+ | Agent | Role | Platforms |
16
+ |-------|------|-----------|
17
+ | YuBin | Frontend Web | Web |
18
+ | Kaede | Backend | API / Server |
19
+ | YeonJi | Android | Android Native |
20
+ | SoHyun | iOS | iOS Native |
21
+ | Kotone | Flutter | Android + iOS + Web |
22
+
23
+ *Only activate agents for platforms confirmed in PRD/RFC.*
24
+
25
+ ---
26
+
27
+ ## Epic: [Epic Name]
28
+
29
+ > Brief description of what this epic delivers and why.
30
+
31
+ ---
32
+
33
+ ### Story: US-01 — [User Story Title]
34
+
35
+ > As a [persona], I want [goal] so that [benefit].
36
+
37
+ ---
38
+
39
+ #### TASK-001: [Short imperative title]
40
+
41
+ **Story Points:** 3
42
+ **Estimated Hours:** 4–8h
43
+ **Assignee:** [YuBin / Kaede / YeonJi / SoHyun / Kotone]
44
+ **Platform:** [Web / Android / iOS / Flutter / Backend]
45
+ **Dependencies:** none / TASK-XXX
46
+
47
+ **Description:**
48
+ One paragraph of what needs to be done and why.
49
+
50
+ **Acceptance Criteria:**
51
+ - [ ] [Specific, binary pass/fail criterion]
52
+ - [ ] [Specific, binary pass/fail criterion]
53
+ - [ ] [Specific, binary pass/fail criterion]
54
+
55
+ **Technical Notes:**
56
+ [Any non-obvious constraints, API endpoints to call, or design assets to reference]
57
+
58
+ **Definition of Done:**
59
+ - [ ] Code written, reviewed, and merged
60
+ - [ ] Unit/component tests written and passing
61
+ - [ ] Integrated and verified in dev environment
62
+ - [ ] No regressions in existing functionality
63
+
64
+ ---
65
+
66
+ #### TASK-002: [Short imperative title]
67
+
68
+ **Story Points:** 5
69
+ **Estimated Hours:** 1–2 days
70
+ **Assignee:** [Agent]
71
+ **Platform:** [Platform]
72
+ **Dependencies:** TASK-001
73
+
74
+ **Description:**
75
+ [Description]
76
+
77
+ **Acceptance Criteria:**
78
+ - [ ] [Criterion]
79
+ - [ ] [Criterion]
80
+
81
+ **Technical Notes:**
82
+ [Notes]
83
+
84
+ **Definition of Done:**
85
+ - [ ] Code written, reviewed, and merged
86
+ - [ ] Tests written and passing
87
+ - [ ] Verified in dev environment
88
+
89
+ ---
90
+
91
+ ### Story: US-02 — [User Story Title]
92
+
93
+ ---
94
+
95
+ #### TASK-003: [Short imperative title]
96
+
97
+ **Story Points:** 2
98
+ **Estimated Hours:** 2–4h
99
+ **Assignee:** [Agent]
100
+ **Platform:** Backend
101
+ **Dependencies:** none
102
+
103
+ **Description:**
104
+ [Description]
105
+
106
+ **Acceptance Criteria:**
107
+ - [ ] [Criterion]
108
+
109
+ **Technical Notes:**
110
+ [Notes]
111
+
112
+ **Definition of Done:**
113
+ - [ ] Code written, reviewed, and merged
114
+ - [ ] Integration test passing
115
+ - [ ] API documented
116
+
117
+ ---
118
+
119
+ ## Infrastructure / Setup Tasks
120
+
121
+ > Technical tasks required by the RFC that don't map to user stories.
122
+
123
+ #### TASK-I01: [Infrastructure task title]
124
+
125
+ **Story Points:** 3
126
+ **Estimated Hours:** 4–8h
127
+ **Assignee:** Kaede (Backend)
128
+ **Platform:** Backend / DevOps
129
+ **Dependencies:** none
130
+
131
+ **Description:**
132
+ [e.g., Configure PostgreSQL schema and run initial migration]
133
+
134
+ **Acceptance Criteria:**
135
+ - [ ] Migration runs successfully in dev environment
136
+ - [ ] Rollback migration also tested
137
+
138
+ ---
139
+
140
+ ## Dependency Map
141
+
142
+ ```
143
+ TASK-I01 (DB setup)
144
+ └── TASK-001 (API endpoint)
145
+ └── TASK-002 (Frontend integration)
146
+ └── TASK-003 (UI polish)
147
+ ```
148
+
149
+ ---
150
+
151
+ ## Timeline Estimate
152
+
153
+ | Week | Focus | Tasks |
154
+ |------|-------|-------|
155
+ | Week 1 | Setup + Core API | TASK-I01, TASK-003 |
156
+ | Week 2 | Core Features | TASK-001, TASK-002 |
157
+ | Week 3 | Polish + QA | Remaining tasks + QA gate |
158
+
159
+ **Buffer:** Add 20% to account for reviews, bug fixes, and unplanned complexity.
160
+
161
+ ---
162
+
163
+ ## Story Point Summary
164
+
165
+ | Agent | Tasks | Points | Est. Time |
166
+ |-------|-------|--------|-----------|
167
+ | YuBin | [N] tasks | [X] pts | [X days] |
168
+ | Kaede | [N] tasks | [X] pts | [X days] |
169
+ | YeonJi | [N] tasks | [X] pts | [X days] |
170
+ | SoHyun | [N] tasks | [X] pts | [X days] |
171
+ | Kotone | [N] tasks | [X] pts | [X days] |
172
+ | **Total** | | **[X] pts** | **[X–Y weeks]** |
@@ -0,0 +1,157 @@
1
+ # Test Cases: [Feature Name]
2
+
3
+ **Author:** Lynn (QA Lead)
4
+ **Date:** YYYY-MM-DD
5
+ **Related PRD:** workspace/PRD.md
6
+ **Related RFC:** workspace/RFC.md
7
+ **Total Test Cases:** [N]
8
+ **Smoke Suite (P0):** [N] cases
9
+
10
+ ---
11
+
12
+ ## Test Data Requirements
13
+
14
+ Before executing, ensure the following test data is in place:
15
+
16
+ | Data | Description | Where to Create |
17
+ |------|-------------|----------------|
18
+ | Standard user | Active account, no special permissions | [Setup instructions] |
19
+ | Admin user | Account with admin role | [Setup instructions] |
20
+ | [Other fixture] | [Description] | [Setup instructions] |
21
+
22
+ ---
23
+
24
+ ## Test Suite: [Feature / User Story Name]
25
+
26
+ ### TC-001: [Short descriptive title — happy path]
27
+
28
+ **Priority:** P0
29
+ **Type:** Positive / Happy Path
30
+ **Platform:** Web / Android / iOS / Flutter / All
31
+ **Related:** US-01
32
+
33
+ **Preconditions:**
34
+ - User is logged in with a standard account
35
+ - [Other preconditions — precise system state]
36
+
37
+ **Test Steps:**
38
+ 1. Navigate to [screen or URL]
39
+ 2. [Action on specific element]
40
+ 3. [Enter specific data: use concrete values, not "valid input"]
41
+ 4. [Click/tap specific button]
42
+
43
+ **Expected Result:**
44
+ - [Specific, observable outcome — not "works correctly"]
45
+ - [System state change — e.g., "Record appears in the list"]
46
+ - [Performance expectation if applicable — e.g., "Response within 2 seconds"]
47
+
48
+ **Test Data:**
49
+ - Email: `test@example.com`
50
+ - Password: `TestPassword123!`
51
+
52
+ ---
53
+
54
+ ### TC-002: [Error path title]
55
+
56
+ **Priority:** P1
57
+ **Type:** Negative / Error Path
58
+ **Platform:** Web / All
59
+
60
+ **Preconditions:**
61
+ - [System state]
62
+
63
+ **Test Steps:**
64
+ 1. [Step]
65
+ 2. [Step — with invalid input: e.g., "Enter `invalid-email` in the Email field"]
66
+ 3. [Step]
67
+
68
+ **Expected Result:**
69
+ - [Specific error message displayed verbatim if possible]
70
+ - [System should NOT do X]
71
+ - [User remains on the same screen]
72
+
73
+ ---
74
+
75
+ ### TC-003: [Edge case title]
76
+
77
+ **Priority:** P2
78
+ **Type:** Edge Case / Boundary
79
+ **Platform:** All
80
+
81
+ **Preconditions:**
82
+ - [Precise state — e.g., "User has exactly 0 items in cart"]
83
+
84
+ **Test Steps:**
85
+ 1. [Step]
86
+ 2. [Step with boundary value — e.g., "Enter 255 characters in the Name field (maximum allowed)"]
87
+ 3. [Step]
88
+
89
+ **Expected Result:**
90
+ - [Expected boundary behavior]
91
+
92
+ ---
93
+
94
+ ### TC-004: [Platform-specific title]
95
+
96
+ **Priority:** P1
97
+ **Type:** Platform-Specific
98
+ **Platform:** Android
99
+
100
+ **Preconditions:**
101
+ - [Android-specific state — e.g., "Device is in portrait orientation"]
102
+
103
+ **Test Steps:**
104
+ 1. [Step]
105
+ 2. [Android-specific action — e.g., "Rotate device to landscape"]
106
+ 3. [Step]
107
+
108
+ **Expected Result:**
109
+ - [Platform-specific expected behavior]
110
+
111
+ ---
112
+
113
+ ### TC-005: [Regression scenario]
114
+
115
+ **Priority:** P1
116
+ **Type:** Regression
117
+ **Platform:** Web
118
+
119
+ **Preconditions:**
120
+ - [State]
121
+
122
+ **Test Steps:**
123
+ 1. [Existing flow that should still work]
124
+ 2. [Step]
125
+
126
+ **Expected Result:**
127
+ - [Existing behavior preserved — confirm no regression]
128
+
129
+ ---
130
+
131
+ ## Automation Candidates
132
+
133
+ Test cases recommended for automation (P0 and P1):
134
+
135
+ | TC ID | Title | Framework | Priority |
136
+ |-------|-------|-----------|---------|
137
+ | TC-001 | [Title] | Playwright / XCUITest / Espresso | P0 |
138
+ | TC-002 | [Title] | Playwright | P1 |
139
+
140
+ ---
141
+
142
+ ## Exploratory Testing Notes
143
+
144
+ Areas for unscripted manual exploration:
145
+ - [Area 1: e.g., "Test with slow network connection (DevTools throttling)"]
146
+ - [Area 2: e.g., "Test with very long user-generated content"]
147
+ - [Area 3: e.g., "Test concurrent actions from two browser tabs"]
148
+
149
+ ---
150
+
151
+ ## Traceability Matrix
152
+
153
+ | Test Case | User Story | Acceptance Criterion |
154
+ |-----------|-----------|---------------------|
155
+ | TC-001 | US-01 | AC-01.1 |
156
+ | TC-002 | US-01 | AC-01.2 (error state) |
157
+ | TC-003 | US-02 | AC-02.1 |