ai-core-framework 0.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 (103) hide show
  1. package/.claude-plugin/plugin.json +21 -0
  2. package/.codex-plugin/plugin.json +35 -0
  3. package/.cursor-plugin/plugin.json +22 -0
  4. package/README.md +173 -0
  5. package/bin/ai-core-framework.js +110 -0
  6. package/core/README.md +162 -0
  7. package/core/agents/README.md +32 -0
  8. package/core/agents/business-analyst.md +269 -0
  9. package/core/agents/developer.md +375 -0
  10. package/core/agents/qa-tester.md +477 -0
  11. package/core/agents/scrum-master.md +136 -0
  12. package/core/agents/tech-lead.md +345 -0
  13. package/core/config/backlog.schema.json +38 -0
  14. package/core/config/docs-policy.default.json +37 -0
  15. package/core/config/release.schema.json +120 -0
  16. package/core/config/ticket.schema.json +253 -0
  17. package/core/rules/00-global-rules.md +373 -0
  18. package/core/rules/01-git-workflow.md +388 -0
  19. package/core/rules/02-code-quality.md +77 -0
  20. package/core/rules/03-security.md +78 -0
  21. package/core/rules/04-documentation.md +72 -0
  22. package/core/rules/05-testing-mandatory.md +374 -0
  23. package/core/rules/06-approval-gates.md +388 -0
  24. package/core/rules/07-definition-of-ready.md +112 -0
  25. package/core/rules/08-definition-of-done.md +149 -0
  26. package/core/scripts/ai-core.sh +456 -0
  27. package/core/scripts/generate-views.sh +210 -0
  28. package/core/scripts/install-codex-prompts.sh +127 -0
  29. package/core/scripts/log-user-request.sh +113 -0
  30. package/core/scripts/setup-project.sh +183 -0
  31. package/core/scripts/sync-platforms.sh +322 -0
  32. package/core/scripts/validate-audit-log.sh +73 -0
  33. package/core/scripts/validate-docs.sh +365 -0
  34. package/core/scripts/validate-permissions.sh +132 -0
  35. package/core/scripts/validate-state.sh +611 -0
  36. package/core/scripts/workflow.sh +513 -0
  37. package/core/skills/README.md +21 -0
  38. package/core/skills/ai-core-commands/SKILL.md +86 -0
  39. package/core/skills/brainstorming/SKILL.md +40 -0
  40. package/core/skills/development-implement-task/SKILL.md +308 -0
  41. package/core/skills/executing-ticket/SKILL.md +28 -0
  42. package/core/skills/git-branch-status/SKILL.md +56 -0
  43. package/core/skills/git-cleanup-branches/SKILL.md +57 -0
  44. package/core/skills/git-scan-untracked/SKILL.md +50 -0
  45. package/core/skills/meta-generate-views/SKILL.md +54 -0
  46. package/core/skills/meta-request-log/SKILL.md +61 -0
  47. package/core/skills/meta-sprint-report/SKILL.md +59 -0
  48. package/core/skills/meta-sync-platforms/SKILL.md +53 -0
  49. package/core/skills/meta-ticket-health/SKILL.md +61 -0
  50. package/core/skills/meta-validate-audit-log/SKILL.md +42 -0
  51. package/core/skills/meta-validate-docs/SKILL.md +58 -0
  52. package/core/skills/meta-validate-permissions/SKILL.md +53 -0
  53. package/core/skills/meta-validate-state/SKILL.md +58 -0
  54. package/core/skills/planning-analyze-requirements/SKILL.md +471 -0
  55. package/core/skills/planning-backlog-status/SKILL.md +57 -0
  56. package/core/skills/planning-document-existing-requirements/SKILL.md +246 -0
  57. package/core/skills/planning-estimate-task/SKILL.md +60 -0
  58. package/core/skills/planning-groom-ticket/SKILL.md +442 -0
  59. package/core/skills/planning-mark-ready/SKILL.md +111 -0
  60. package/core/skills/planning-plan-refactor/SKILL.md +66 -0
  61. package/core/skills/planning-plan-sprint/SKILL.md +112 -0
  62. package/core/skills/planning-prioritize-backlog/SKILL.md +62 -0
  63. package/core/skills/planning-write-plan/SKILL.md +68 -0
  64. package/core/skills/project-detect-stack/SKILL.md +71 -0
  65. package/core/skills/project-discover-codebase/SKILL.md +74 -0
  66. package/core/skills/project-setup-project/SKILL.md +113 -0
  67. package/core/skills/qa-bug-status/SKILL.md +52 -0
  68. package/core/skills/qa-report-bug/SKILL.md +518 -0
  69. package/core/skills/qa-smoke-test/SKILL.md +387 -0
  70. package/core/skills/qa-triage-bug/SKILL.md +62 -0
  71. package/core/skills/qa-verify-fix/SKILL.md +446 -0
  72. package/core/skills/release-hotfix/SKILL.md +117 -0
  73. package/core/skills/release-release/SKILL.md +123 -0
  74. package/core/skills/release-rollback/SKILL.md +62 -0
  75. package/core/skills/review-create-pr/SKILL.md +418 -0
  76. package/core/skills/review-merge-pr/SKILL.md +425 -0
  77. package/core/skills/review-techlead-review/SKILL.md +547 -0
  78. package/core/skills/using-ai-core/SKILL.md +72 -0
  79. package/core/skills/verification-before-done/SKILL.md +35 -0
  80. package/core/skills/writing-implementation-plan/SKILL.md +45 -0
  81. package/core/templates/ci/ai-core-governance.yml +112 -0
  82. package/core/templates/ci/node-pnpm.yml +35 -0
  83. package/core/templates/pm/retrospective-template.md +47 -0
  84. package/core/templates/pm/sprint-plan-template.md +45 -0
  85. package/core/templates/pr/pull-request-template.md +247 -0
  86. package/core/templates/project/CODEOWNERS +11 -0
  87. package/core/templates/project/docs-policy.json +3 -0
  88. package/core/templates/project/project-config.yaml +137 -0
  89. package/core/templates/project/project-structure.yaml +76 -0
  90. package/core/templates/qa/bug-report-template.md +371 -0
  91. package/core/templates/qa/test-plan-template.md +57 -0
  92. package/core/templates/release/release-record-template.json +67 -0
  93. package/core/templates/requirements/PRD-template.md +58 -0
  94. package/core/templates/requirements/user-story-template.md +381 -0
  95. package/core/templates/technical/ADR-template.md +46 -0
  96. package/core/templates/technical/refactor-plan-template.md +84 -0
  97. package/core/templates/technical/tech-design-template.md +71 -0
  98. package/core/workflows/bug-lifecycle.md +56 -0
  99. package/core/workflows/feature-lifecycle.md +347 -0
  100. package/core/workflows/hotfix-lifecycle.md +65 -0
  101. package/core/workflows/sprint-lifecycle.md +56 -0
  102. package/lib/install-codex.js +85 -0
  103. package/package.json +36 -0
@@ -0,0 +1,381 @@
1
+ <!--
2
+ User Story Template
3
+ Used by: business-analyst agent (via /analyze-requirements)
4
+ Consumed by: tech-lead (via /groom-ticket), developer (via /implement-task), qa-tester
5
+
6
+ Instructions:
7
+ - Fill ALL required sections (marked with *)
8
+ - Delete sections marked "optional" if not applicable
9
+ - Keep language clear, specific, testable
10
+ - Avoid implementation details (HOW) - focus on WHAT + WHY
11
+ - INVEST compliance required (see checklist at bottom)
12
+ -->
13
+
14
+ # TICKET-XXX: [Short descriptive title] *
15
+
16
+ <!--
17
+ Title guidelines:
18
+ - Max 80 chars
19
+ - Action-oriented: "Add X", "Fix Y", "Refactor Z"
20
+ - Specific: "Add password reset via email" > "Improve auth"
21
+ - No implementation details: "Add password reset" > "Implement JWT-based password reset"
22
+ -->
23
+
24
+ ---
25
+
26
+ ## 📋 Metadata *
27
+
28
+ | Field | Value |
29
+ |-------|-------|
30
+ | **Ticket ID** | `TICKET-XXX` |
31
+ | **Type** | `feature` \| `enhancement` \| `bug` \| `tech-debt` \| `spike` |
32
+ | **Priority (MoSCoW)** | `MUST` \| `SHOULD` \| `COULD` \| `WONT` |
33
+ | **Severity** (bugs only) | `SEV-1` \| `SEV-2` \| `SEV-3` \| `SEV-4` |
34
+ | **Status** | `DRAFT` (auto at creation) |
35
+ | **Epic** | `EPIC-XXX` (optional) |
36
+ | **Source** | stakeholder-email \| slack \| user-interview \| support-ticket \| meeting \| other |
37
+ | **Requested by** | [Stakeholder name or role] |
38
+ | **Created by** | business-analyst-agent |
39
+ | **Created at** | YYYY-MM-DD HH:MM |
40
+
41
+ ---
42
+
43
+ ## 👤 User Story *
44
+
45
+ <!--
46
+ Format: "As a <persona>, I want <action>, So that <business value>"
47
+
48
+ Guidelines:
49
+ - Persona: specific user type (not "user" - be specific: "registered user", "admin", "free-tier customer")
50
+ - Action: what they want to DO (not how system implements it)
51
+ - Value: WHY this matters to them or business
52
+ -->
53
+
54
+ **As a** [specific persona],
55
+ **I want** [specific action / capability],
56
+ **So that** [business / user value].
57
+
58
+ ### Example
59
+ > **As a** registered user who forgot their password,
60
+ > **I want to** reset my password via email,
61
+ > **So that** I can regain access to my account without contacting support.
62
+
63
+ ---
64
+
65
+ ## 🎯 Business Context *
66
+
67
+ <!--
68
+ Why is this important? What problem does it solve?
69
+ Include metrics/evidence when possible.
70
+ -->
71
+
72
+ ### Problem statement
73
+ <!-- 1-3 sentences describing the problem -->
74
+
75
+ ### Current state
76
+ <!-- What happens now without this feature/fix? -->
77
+ -
78
+ -
79
+
80
+ ### Desired state
81
+ <!-- What changes after this is done? -->
82
+ -
83
+ -
84
+
85
+ ### Success metrics
86
+ <!-- How do we measure success? -->
87
+ - **Primary metric**: [e.g., "Support tickets re: password reduce by 40%"]
88
+ - **Secondary**: [e.g., "User reactivation rate +5%"]
89
+
90
+ ---
91
+
92
+ ## ✅ Acceptance Criteria *
93
+
94
+ <!--
95
+ MINIMUM 3 scenarios required:
96
+ 1. Happy path
97
+ 2. Edge case
98
+ 3. Error case
99
+ Add more for security, performance, etc.
100
+
101
+ Use Gherkin format (Given/When/Then).
102
+ Each MUST be testable - QA can write a test case from this.
103
+ -->
104
+
105
+ ### Scenario 1: [Happy path - descriptive name] *
106
+
107
+ ```gherkin
108
+ Given [initial context / precondition]
109
+ And [additional context if needed]
110
+ When [user action or event]
111
+ Then [expected outcome]
112
+ And [additional outcomes]
113
+ ```
114
+
115
+ **Example**:
116
+ ```gherkin
117
+ Given User has an account with email "user@example.com"
118
+ When User requests a password reset for that email
119
+ And User clicks the link in the received email
120
+ Then User is redirected to the new password page
121
+ And User can enter a new password and log in successfully
122
+ ```
123
+
124
+ ---
125
+
126
+ ### Scenario 2: [Edge case - descriptive name] *
127
+
128
+ ```gherkin
129
+ Given [edge context]
130
+ When [action]
131
+ Then [expected behavior]
132
+ ```
133
+
134
+ **Example**:
135
+ ```gherkin
136
+ Given User enters an email that is not registered in the system
137
+ When User submit form reset password
138
+ Then System displays message "If this email is registered, reset instructions have been sent"
139
+ And System MUST NOT send a real email, preventing email enumeration
140
+ ```
141
+
142
+ ---
143
+
144
+ ### Scenario 3: [Error case - descriptive name] *
145
+
146
+ ```gherkin
147
+ Given [error context]
148
+ When [action]
149
+ Then [error handling]
150
+ ```
151
+
152
+ **Example**:
153
+ ```gherkin
154
+ Given User received the reset email more than 24 hours ago
155
+ When User click link reset
156
+ Then System displays "This link has expired. Please request a new one"
157
+ And System allows the user to request a new link on the same page
158
+ ```
159
+
160
+ ---
161
+
162
+ ### Scenario 4 (optional): [Security case - e.g., rate limiting]
163
+
164
+ ```gherkin
165
+ Given [security context]
166
+ When [attack vector attempt]
167
+ Then [defense behavior]
168
+ ```
169
+
170
+ **Example**:
171
+ ```gherkin
172
+ Given User has requested a reset 5 times within 1 hour
173
+ When User makes the 6th request
174
+ Then System rejects it with HTTP 429 "Too many requests"
175
+ And System displays "Please try again in X minutes"
176
+ ```
177
+
178
+ ---
179
+
180
+ ### Scenario 5 (optional): [Performance case]
181
+
182
+ ```gherkin
183
+ Given [performance context]
184
+ When [load condition]
185
+ Then [performance expectation]
186
+ ```
187
+
188
+ ---
189
+
190
+ ## 🚫 Out of Scope
191
+
192
+ <!--
193
+ Explicitly state what is NOT included.
194
+ Prevents scope creep and sets expectations.
195
+ -->
196
+
197
+ - [ ] [Feature not included in this ticket]
198
+ - [ ] [Another future enhancement]
199
+ - [ ] [Related work tracked elsewhere]
200
+
201
+ **Example**:
202
+ - [ ] SMS-based password reset (future ticket)
203
+ - [ ] Security questions flow (deprecated, not coming back)
204
+ - [ ] Password change while logged in (see TICKET-045)
205
+ - [ ] Admin-initiated password reset (see TICKET-046)
206
+
207
+ ---
208
+
209
+ ## 🔗 Dependencies
210
+
211
+ ### Blocked by
212
+ <!-- Tickets that must complete before this can start -->
213
+ - [ ] TICKET-XXX: [brief description]
214
+
215
+ ### Blocks
216
+ <!-- Tickets that depend on this -->
217
+ - TICKET-YYY: [brief description]
218
+
219
+ ### External dependencies
220
+ <!-- 3rd party services, credentials, infrastructure -->
221
+ - [ ] [e.g., "SendGrid API credentials (contact DevOps)"]
222
+ - [ ] [e.g., "Figma design approved by UX (pending)"]
223
+
224
+ ### Data dependencies
225
+ <!-- New tables, migrations, data imports -->
226
+ - [ ] [e.g., "New table `password_reset_tokens` - migration needed"]
227
+
228
+ ---
229
+
230
+ ## 🎨 Design / Mockups
231
+
232
+ <!-- Delete section if not applicable -->
233
+
234
+ ### Figma
235
+ <!-- Link to design files -->
236
+ - [Design doc](link)
237
+ - [Mockup v2](link)
238
+
239
+ ### Copy / Content
240
+ <!-- Exact text, especially for user-facing strings -->
241
+
242
+ | Context | Text |
243
+ |---------|------|
244
+ | Email subject | `Reset your password` |
245
+ | Email body CTA | `Reset password` |
246
+ | Success message | `Password updated successfully. Please log in with your new password.` |
247
+ | Expired link | `This link has expired. Request a new one below.` |
248
+
249
+ ### i18n / l10n
250
+ <!-- Is this translated? Which locales? -->
251
+ - [ ] i18n keys needed: `auth.reset_password.*`
252
+ - [ ] Locales: en (MVP), vi, ja (later sprints)
253
+
254
+ ---
255
+
256
+ ## ❓ Open Questions
257
+
258
+ <!--
259
+ Questions that need answers BEFORE implementation.
260
+ Tech Lead will review these during grooming.
261
+ -->
262
+
263
+ ### For Tech Lead
264
+ - [ ] [Technical question]
265
+ - [ ] [Architecture decision question]
266
+
267
+ **Examples**:
268
+ - [ ] Token expiration: 24h acceptable or should be shorter?
269
+ - [ ] Rate limit approach: per-email or per-IP or both?
270
+ - [ ] Email template: reuse existing framework or build new?
271
+
272
+ ### For Product / Stakeholder
273
+ - [ ] [Product decision]
274
+
275
+ **Examples**:
276
+ - [ ] Should we notify user via email AFTER password successfully changed?
277
+ - [ ] Should reset also invalidate all existing sessions?
278
+
279
+ ### For Design / UX
280
+ - [ ] [Design question]
281
+
282
+ ---
283
+
284
+ ## 🧪 Test Considerations
285
+
286
+ <!-- Guidance for QA test planning -->
287
+
288
+ ### Test types needed
289
+ - [ ] Unit tests (developer)
290
+ - [ ] Integration tests (developer)
291
+ - [ ] E2E tests (if critical user flow)
292
+ - [ ] Security tests (if touching auth/data)
293
+ - [ ] Performance tests (if on hot path)
294
+ - [ ] Accessibility tests (if UI change)
295
+ - [ ] Cross-browser tests (if UI change)
296
+ - [ ] Mobile responsive tests (if UI change)
297
+
298
+ ### Test data requirements
299
+ <!-- Any special data setup? -->
300
+ -
301
+
302
+ ### Environment requirements
303
+ <!-- Staging? Preview deploy? Specific config? -->
304
+ -
305
+
306
+ ---
307
+
308
+ ## ⚠️ Risks & Concerns
309
+
310
+ <!--
311
+ BA can list initial concerns. Tech Lead refines during grooming.
312
+ -->
313
+
314
+ - [ ] [Concern 1]
315
+ - [ ] [Concern 2]
316
+
317
+ **Examples**:
318
+ - [ ] Email deliverability (spam filters for transactional emails)
319
+ - [ ] Token enumeration if RNG not cryptographically secure
320
+ - [ ] Locale of email content (which language to send?)
321
+
322
+ ---
323
+
324
+ ## 📊 INVEST Compliance Check
325
+
326
+ <!--
327
+ BA MUST verify this before marking ticket ready for grooming.
328
+ If any fail, iterate on story or propose split.
329
+ -->
330
+
331
+ - [ ] **Independent**: Can be shipped alone without waiting on another ticket mid-flight
332
+ - [ ] **Negotiable**: AC could be adjusted (not locked to specific implementation)
333
+ - [ ] **Valuable**: Business value clearly stated
334
+ - [ ] **Estimable**: Enough detail for Tech Lead to estimate (≤ 8 points target)
335
+ - [ ] **Small**: Fits in one sprint (if too big, split)
336
+ - [ ] **Testable**: Every AC scenario is verifiable
337
+
338
+ ---
339
+
340
+ ## 📝 Additional Notes
341
+
342
+ <!-- Any context that doesn't fit above sections -->
343
+
344
+ ### Assumptions made
345
+ <!-- What did BA assume while writing this? -->
346
+ -
347
+
348
+ ### Source material
349
+ <!-- Quotes from stakeholder, links to interviews, etc. -->
350
+
351
+ **Example**:
352
+ > "Our customers keep calling support when they forget passwords. We've had 15 tickets this week alone. We need self-service." — CEO email, 2026-04-15
353
+
354
+ ---
355
+
356
+ ## 🔄 Change History
357
+
358
+ <!-- Auto-populated on state transitions -->
359
+
360
+ | Date | State | Agent / Person | Note |
361
+ |------|-------|----------------|------|
362
+ | YYYY-MM-DD | DRAFT | business-analyst | Ticket created |
363
+
364
+ ---
365
+
366
+ ## 🤝 Handoff
367
+
368
+ **Next step**: `/groom-ticket TICKET-XXX`
369
+ **Assigned to**: tech-lead
370
+ **Expected**: Technical approach + estimate + risks within 1-2 business days
371
+
372
+ ---
373
+
374
+ <!--
375
+ DO NOT EDIT BELOW - auto-populated fields
376
+ -->
377
+
378
+ <!-- TEMPLATE_VERSION: 1.0.0 -->
379
+ <!-- CREATED_BY_AGENT: business-analyst -->
380
+ <!-- NEXT_AGENT: tech-lead -->
381
+ <!-- SCHEMA: core/config/ticket.schema.json -->
@@ -0,0 +1,46 @@
1
+ # Architecture Decision Record Template
2
+
3
+ ## Status
4
+
5
+ Proposed | Accepted | Deprecated | Superseded
6
+
7
+ ## Context
8
+
9
+ Describe the forces, constraints, and problem that require a decision.
10
+
11
+ ## Decision
12
+
13
+ State the decision clearly.
14
+
15
+ ## Alternatives Considered
16
+
17
+ | Option | Pros | Cons | Reason rejected or accepted |
18
+ |--------|------|------|-----------------------------|
19
+ | | | | |
20
+
21
+ ## Consequences
22
+
23
+ ### Positive
24
+
25
+ -
26
+
27
+ ### Negative
28
+
29
+ -
30
+
31
+ ### Risks
32
+
33
+ -
34
+
35
+ ## Implementation Notes
36
+
37
+ - Owner:
38
+ - Target ticket:
39
+ - Migration required:
40
+ - Rollback or mitigation:
41
+
42
+ ## Links
43
+
44
+ - Tickets:
45
+ - PRs:
46
+ - Docs:
@@ -0,0 +1,84 @@
1
+ # Refactor Plan Template
2
+
3
+ ## Metadata
4
+
5
+ - Plan ID:
6
+ - Owner:
7
+ - Status:
8
+ - Created:
9
+ - Related epic:
10
+ - Related ADRs:
11
+
12
+ ## Problem
13
+
14
+ Describe the current technical problem and why it matters now.
15
+
16
+ ## Goals
17
+
18
+ -
19
+
20
+ ## Non-Goals
21
+
22
+ -
23
+
24
+ ## Affected Areas
25
+
26
+ | Area | Current issue | Target state | Risk |
27
+ |------|---------------|--------------|------|
28
+ | | | | |
29
+
30
+ ## Constraints
31
+
32
+ - Backward compatibility:
33
+ - Data migration:
34
+ - Performance:
35
+ - Security:
36
+ - Release timing:
37
+
38
+ ## Proposed Approach
39
+
40
+ Describe the refactor strategy and sequence.
41
+
42
+ ## Phases
43
+
44
+ | Phase | Objective | Tickets | Exit criteria |
45
+ |-------|-----------|---------|---------------|
46
+ | 1 | | | |
47
+ | 2 | | | |
48
+ | 3 | | | |
49
+
50
+ ## Ticket Breakdown
51
+
52
+ | Ticket | Type | Summary | Depends on |
53
+ |--------|------|---------|------------|
54
+ | TICKET-XXX | tech-debt | | |
55
+
56
+ ## Testing Strategy
57
+
58
+ - Characterization tests before refactor:
59
+ - Unit tests:
60
+ - Integration tests:
61
+ - E2E smoke tests:
62
+ - Performance checks:
63
+
64
+ ## Rollout Plan
65
+
66
+ - Feature flags:
67
+ - Incremental deploy:
68
+ - Monitoring:
69
+ - Rollback:
70
+
71
+ ## Risks and Mitigations
72
+
73
+ | Risk | Probability | Impact | Mitigation | Owner |
74
+ |------|-------------|--------|------------|-------|
75
+ | | | | | |
76
+
77
+ ## Verification Checklist
78
+
79
+ - [ ] Existing behavior covered by tests
80
+ - [ ] No public API regression
81
+ - [ ] Performance within threshold
82
+ - [ ] Security review complete if sensitive area
83
+ - [ ] Docs updated
84
+ - [ ] Follow-up tickets created
@@ -0,0 +1,71 @@
1
+ # Technical Design Template
2
+
3
+ ## Metadata
4
+
5
+ - Ticket/epic:
6
+ - Author:
7
+ - Reviewers:
8
+ - Status:
9
+ - Date:
10
+
11
+ ## Summary
12
+
13
+ Briefly describe the technical change.
14
+
15
+ ## Goals
16
+
17
+ -
18
+
19
+ ## Non-Goals
20
+
21
+ -
22
+
23
+ ## Current State
24
+
25
+ Describe existing architecture, data flow, and limitations.
26
+
27
+ ## Proposed Design
28
+
29
+ ### Components
30
+
31
+ | Component | Responsibility | Change |
32
+ |-----------|----------------|--------|
33
+ | | | |
34
+
35
+ ### Data Model
36
+
37
+ - New fields/tables:
38
+ - Migration plan:
39
+ - Backward compatibility:
40
+
41
+ ### API Contract
42
+
43
+ - Endpoint/event/command:
44
+ - Request:
45
+ - Response:
46
+ - Error cases:
47
+
48
+ ## Testing Strategy
49
+
50
+ - Unit:
51
+ - Integration:
52
+ - E2E:
53
+ - Manual QA:
54
+
55
+ ## Security and Privacy
56
+
57
+ - Auth/authz:
58
+ - Data sensitivity:
59
+ - Logging/audit:
60
+ - Threats and mitigations:
61
+
62
+ ## Rollout Plan
63
+
64
+ - Feature flag:
65
+ - Deployment steps:
66
+ - Monitoring:
67
+ - Rollback:
68
+
69
+ ## Open Questions
70
+
71
+ -
@@ -0,0 +1,56 @@
1
+ # Bug Lifecycle Workflow
2
+
3
+ > Complete path from bug discovery to triage, fix, verification, and closure.
4
+
5
+ ## 🎯 Purpose
6
+
7
+ Make bugs reproducible, prioritized, fixed with regression coverage, and verified by QA.
8
+
9
+ ## 🔄 Flow
10
+
11
+ 1. Discovery
12
+ - Any agent or user reports a defect with `/report-bug`.
13
+ - Bug is created in `project/bugs/` with status `NEW` or `NEEDS_MORE_INFO`.
14
+
15
+ 2. Triage
16
+ - BA runs `/triage-bug` with Tech Lead and QA input.
17
+ - Severity, priority, owner, duplicate status, and target fix window are set.
18
+ - SEV-1 and SEV-2 may trigger `/hotfix`.
19
+
20
+ 3. Fix planning
21
+ - For normal bugs, create or link a `TICKET-XXX` bug ticket.
22
+ - Ticket follows normal state machine from `DRAFT` or `READY` depending on triage confidence.
23
+
24
+ 4. Development
25
+ - Developer reproduces the bug.
26
+ - Developer writes regression test first.
27
+ - Developer fixes with `/implement-task`.
28
+
29
+ 5. Review and merge
30
+ - Developer creates PR.
31
+ - Tech Lead reviews.
32
+ - Tech Lead merges to QA.
33
+
34
+ 6. Verification
35
+ - QA runs `/verify-fix BUG-XXX` or `/smoke-test TICKET-XXX`.
36
+ - Pass closes or verifies the bug.
37
+ - Fail sends bug/ticket back to development with evidence.
38
+
39
+ ## 🔒 Rules
40
+
41
+ - No vague bug reports accepted as actionable.
42
+ - Severity must be justified.
43
+ - Regression tests are mandatory for bug fixes unless documented impossible.
44
+ - QA owns verification.
45
+ - SEV-1 requires immediate escalation.
46
+
47
+ ## 📊 Artifacts
48
+
49
+ - `project/bugs/BUG-XXX.json`
50
+ - Linked ticket in `project/tickets/`
51
+ - Verification report
52
+ - Regression tests
53
+
54
+ ## 🔗 Commands
55
+
56
+ `/report-bug` → `/triage-bug` → `/implement-task` → `/create-pr` → `/techlead-review` → `/merge-pr` → `/verify-fix`