sdlc-workflow 1.0.0 → 1.0.2
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/README.md +40 -12
- package/bin/cli.js +158 -32
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
# sdlc-workflow
|
|
2
2
|
|
|
3
|
-
Scaffold SDLC workflow docs and templates into your project. Works with **Cursor** and **
|
|
3
|
+
Scaffold SDLC workflow docs and templates into your project. Works with **Cursor**, **Claude**, **Antigravity**, and **Codex**.
|
|
4
4
|
|
|
5
5
|
## Flow
|
|
6
6
|
|
|
7
7
|
```
|
|
8
|
-
User Request → PO → Business BA → Architect → Technical BA →
|
|
8
|
+
User Request → PO → Business BA → Architect → Technical BA → QE (docs) → Dev → QE (testing) → Deploy
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
+
- **QE (docs)**: Test plan, test cases — before Dev implements
|
|
12
|
+
- **Dev**: Tech Lead (review, merge) + Senior Dev (implement, Unit Test ≥90%)
|
|
13
|
+
- **QE (testing)**: After Dev unit tests — automation + manual, sign-off
|
|
14
|
+
|
|
11
15
|
## Usage
|
|
12
16
|
|
|
13
17
|
In your project directory:
|
|
@@ -18,10 +22,17 @@ npx sdlc-workflow init
|
|
|
18
22
|
|
|
19
23
|
This creates:
|
|
20
24
|
|
|
25
|
+
**Project:**
|
|
21
26
|
- `docs/sdlc/` — SDLC docs, templates, and phase folders
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
- `.
|
|
27
|
+
- `AGENTS.md` — Antigravity, Codex (universal project guidance)
|
|
28
|
+
- `.agents/skills/sdlc-workflow/` — Codex repo skill
|
|
29
|
+
- `.cursor/rules/sdlc-workflow.mdc` — Cursor rule
|
|
30
|
+
- `.claude/CLAUDE.md` — Claude Code instructions
|
|
31
|
+
|
|
32
|
+
**Global (user home):**
|
|
33
|
+
- `~/.cursor/skills/sdlc-workflow/` — Cursor skill
|
|
34
|
+
- `~/.codex/AGENTS.md` — Codex global instructions
|
|
35
|
+
- `~/.agents/skills/sdlc-workflow/` — Codex global skill
|
|
25
36
|
|
|
26
37
|
## Generated Structure
|
|
27
38
|
|
|
@@ -43,22 +54,39 @@ docs/sdlc/
|
|
|
43
54
|
├── architecture/ # Architect
|
|
44
55
|
│ ├── adr.template.md
|
|
45
56
|
│ └── README.md
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
57
|
+
├── qe/ # QE (docs + testing)
|
|
58
|
+
│ ├── test-case.template.md
|
|
59
|
+
│ └── README.md
|
|
60
|
+
└── dev/ # Dev team (per role)
|
|
61
|
+
├── tech-lead/ # Tech Lead 15+ yrs: tech stack, review & merge
|
|
62
|
+
│ └── README.md
|
|
63
|
+
└── senior-developer/ # Senior Dev 10+ yrs: implement, Unit Test ≥90%
|
|
64
|
+
└── README.md
|
|
49
65
|
|
|
50
66
|
.cursor/rules/
|
|
51
67
|
└── sdlc-workflow.mdc # Cursor rule
|
|
68
|
+
|
|
69
|
+
AGENTS.md # Antigravity, Codex (universal)
|
|
70
|
+
.agents/skills/sdlc-workflow/ # Codex repo skill
|
|
52
71
|
```
|
|
53
72
|
|
|
73
|
+
## Use with Cursor
|
|
74
|
+
|
|
75
|
+
The rule `.cursor/rules/sdlc-workflow.mdc` activates when working with `docs/sdlc/**` or `*.md`. Global skill: `~/.cursor/skills/sdlc-workflow/`.
|
|
76
|
+
|
|
54
77
|
## Use with Claude
|
|
55
78
|
|
|
56
|
-
- **Claude Code** (project): `.claude/CLAUDE.md`
|
|
57
|
-
- **Claude.ai** (web): Copy `docs/sdlc/SDLC-WORKFLOW.md` into Custom Instructions or @ mention it
|
|
79
|
+
- **Claude Code** (project): `.claude/CLAUDE.md` — Claude loads it when you open this project.
|
|
80
|
+
- **Claude.ai** (web): Copy `docs/sdlc/SDLC-WORKFLOW.md` into Custom Instructions or @ mention it.
|
|
58
81
|
|
|
59
|
-
## Use with
|
|
82
|
+
## Use with Antigravity
|
|
83
|
+
|
|
84
|
+
`AGENTS.md` at project root — Antigravity reads it (priority: AGENTS.md → GEMINI.md). Universal format, works across agentic IDEs.
|
|
85
|
+
|
|
86
|
+
## Use with Codex
|
|
60
87
|
|
|
61
|
-
|
|
88
|
+
- **Project**: `AGENTS.md` + `.agents/skills/sdlc-workflow/`
|
|
89
|
+
- **Global**: `~/.codex/AGENTS.md` + `~/.agents/skills/sdlc-workflow/`
|
|
62
90
|
|
|
63
91
|
## Release
|
|
64
92
|
|
package/bin/cli.js
CHANGED
|
@@ -18,7 +18,7 @@ async function main() {
|
|
|
18
18
|
if (command !== "init") {
|
|
19
19
|
console.log("Usage: npx sdlc-workflow init");
|
|
20
20
|
console.log(" Scaffolds SDLC docs and templates into current project.");
|
|
21
|
-
console.log(" Installs Cursor
|
|
21
|
+
console.log(" Installs for: Cursor, Claude, Antigravity, Codex.");
|
|
22
22
|
process.exit(1);
|
|
23
23
|
}
|
|
24
24
|
|
|
@@ -29,9 +29,12 @@ async function main() {
|
|
|
29
29
|
await scaffold(cwd);
|
|
30
30
|
await installCursorSkill(home);
|
|
31
31
|
await installClaudeSkill(cwd);
|
|
32
|
+
await installAgentsMd(cwd);
|
|
33
|
+
await installCodexSkill(home);
|
|
32
34
|
console.log("\nDone.");
|
|
33
|
-
console.log(" - Project: docs/sdlc/, .cursor/rules/, .claude/");
|
|
34
|
-
console.log(" - Cursor
|
|
35
|
+
console.log(" - Project: docs/sdlc/, .cursor/rules/, .claude/, AGENTS.md, .agents/skills/");
|
|
36
|
+
console.log(" - Cursor: ~/.cursor/skills/sdlc-workflow/");
|
|
37
|
+
console.log(" - Codex: ~/.codex/AGENTS.md, ~/.agents/skills/sdlc-workflow/");
|
|
35
38
|
} catch (err) {
|
|
36
39
|
console.error("Error:", err.message);
|
|
37
40
|
process.exit(1);
|
|
@@ -69,6 +72,57 @@ async function installClaudeSkill(cwd) {
|
|
|
69
72
|
console.log(" + .claude/CLAUDE.md (Claude instructions)");
|
|
70
73
|
}
|
|
71
74
|
|
|
75
|
+
async function installAgentsMd(cwd) {
|
|
76
|
+
const agentsPath = join(cwd, "AGENTS.md");
|
|
77
|
+
const content = AGENTS_MD_CONTENT;
|
|
78
|
+
if (existsSync(agentsPath)) {
|
|
79
|
+
const existing = await readFile(agentsPath, "utf8");
|
|
80
|
+
if (existing.includes("## SDLC Workflow")) {
|
|
81
|
+
console.log(" + AGENTS.md (SDLC section already present)");
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
await writeFile(agentsPath, existing.trimEnd() + "\n\n" + content, "utf8");
|
|
85
|
+
} else {
|
|
86
|
+
await writeFile(agentsPath, content, "utf8");
|
|
87
|
+
}
|
|
88
|
+
console.log(" + AGENTS.md (Antigravity, Codex project)");
|
|
89
|
+
|
|
90
|
+
const codexSkillDir = join(cwd, ".agents", "skills", "sdlc-workflow");
|
|
91
|
+
await mkdir(codexSkillDir, { recursive: true });
|
|
92
|
+
await writeFile(join(codexSkillDir, "SKILL.md"), CURSOR_SKILL_MD, "utf8");
|
|
93
|
+
await writeFile(join(codexSkillDir, "reference.md"), CURSOR_REFERENCE_MD, "utf8");
|
|
94
|
+
console.log(" + .agents/skills/sdlc-workflow/ (Codex repo skill)");
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
async function installCodexSkill(home) {
|
|
98
|
+
const codexDir = join(home, ".codex");
|
|
99
|
+
const codexAgentsPath = join(codexDir, "AGENTS.md");
|
|
100
|
+
const sdlcContent = CLAUDE_SDLC_CONTENT;
|
|
101
|
+
await mkdir(codexDir, { recursive: true });
|
|
102
|
+
if (existsSync(codexAgentsPath)) {
|
|
103
|
+
const existing = await readFile(codexAgentsPath, "utf8");
|
|
104
|
+
if (existing.includes("## SDLC Workflow")) {
|
|
105
|
+
console.log(" + ~/.codex/AGENTS.md (SDLC section already present)");
|
|
106
|
+
} else {
|
|
107
|
+
await writeFile(
|
|
108
|
+
codexAgentsPath,
|
|
109
|
+
existing.trimEnd() + "\n\n" + sdlcContent,
|
|
110
|
+
"utf8"
|
|
111
|
+
);
|
|
112
|
+
console.log(" + ~/.codex/AGENTS.md (Codex global)");
|
|
113
|
+
}
|
|
114
|
+
} else {
|
|
115
|
+
await writeFile(codexAgentsPath, sdlcContent, "utf8");
|
|
116
|
+
console.log(" + ~/.codex/AGENTS.md (Codex global)");
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
const agentsSkillDir = join(home, ".agents", "skills", "sdlc-workflow");
|
|
120
|
+
await mkdir(agentsSkillDir, { recursive: true });
|
|
121
|
+
await writeFile(join(agentsSkillDir, "SKILL.md"), CURSOR_SKILL_MD, "utf8");
|
|
122
|
+
await writeFile(join(agentsSkillDir, "reference.md"), CURSOR_REFERENCE_MD, "utf8");
|
|
123
|
+
console.log(" + ~/.agents/skills/sdlc-workflow/ (Codex global skill)");
|
|
124
|
+
}
|
|
125
|
+
|
|
72
126
|
async function scaffold(cwd) {
|
|
73
127
|
const templates = join(TEMPLATES_DIR, "project");
|
|
74
128
|
if (!existsSync(templates)) {
|
|
@@ -95,6 +149,8 @@ async function generateFromInline(cwd) {
|
|
|
95
149
|
join(base, "ba", "technical"),
|
|
96
150
|
join(base, "architecture"),
|
|
97
151
|
join(base, "qe"),
|
|
152
|
+
join(base, "dev", "tech-lead"),
|
|
153
|
+
join(base, "dev", "senior-developer"),
|
|
98
154
|
];
|
|
99
155
|
|
|
100
156
|
for (const d of dirs) {
|
|
@@ -115,6 +171,8 @@ async function generateFromInline(cwd) {
|
|
|
115
171
|
["architecture/README.md", ARCH_README],
|
|
116
172
|
["qe/test-case.template.md", QE_TC_TEMPLATE],
|
|
117
173
|
["qe/README.md", QE_README],
|
|
174
|
+
["dev/tech-lead/README.md", DEV_TECH_LEAD_README],
|
|
175
|
+
["dev/senior-developer/README.md", DEV_SENIOR_README],
|
|
118
176
|
];
|
|
119
177
|
|
|
120
178
|
for (const [rel, content] of files) {
|
|
@@ -125,21 +183,21 @@ async function generateFromInline(cwd) {
|
|
|
125
183
|
}
|
|
126
184
|
|
|
127
185
|
const CURSOR_RULE_CONTENT = `---
|
|
128
|
-
description: SDLC multi-role workflow (PO → BA → Architect → Tech BA → Dev → QE)
|
|
186
|
+
description: SDLC multi-role workflow (PO → BA → Architect → Tech BA → QE docs → Dev → QE testing)
|
|
129
187
|
alwaysApply: false
|
|
130
188
|
globs: docs/sdlc/**/*, **/*.md
|
|
131
189
|
---
|
|
132
190
|
|
|
133
191
|
# SDLC Workflow
|
|
134
192
|
|
|
135
|
-
When working on requirements or docs, follow the SDLC phases:
|
|
136
|
-
|
|
137
193
|
1. **PO** — PRD, user stories → docs/sdlc/po/
|
|
138
194
|
2. **Business BA** — FRS, process flows → docs/sdlc/ba/business/
|
|
139
195
|
3. **Architect** — ADRs, diagrams → docs/sdlc/architecture/
|
|
140
196
|
4. **Technical BA** — API specs, team breakdown → docs/sdlc/ba/technical/
|
|
141
|
-
5. **
|
|
142
|
-
6. **
|
|
197
|
+
5. **QE (docs)** — Test plan, test cases → docs/sdlc/qe/
|
|
198
|
+
6. **Dev** — Tech Lead (review, merge) + Senior Dev (implement, ≥90% unit test) → docs/sdlc/dev/{role}/
|
|
199
|
+
7. **QE (testing)** — Automation + manual tests, sign-off
|
|
200
|
+
8. **Deploy** — Release, monitor
|
|
143
201
|
|
|
144
202
|
Full workflow: docs/sdlc/SDLC-WORKFLOW.md
|
|
145
203
|
`;
|
|
@@ -156,7 +214,7 @@ Sequential workflow for approaching user requirements. Each phase produces docs/
|
|
|
156
214
|
## Flow Overview
|
|
157
215
|
|
|
158
216
|
\`\`\`
|
|
159
|
-
User Request → PO → Business BA → Architect → Technical BA →
|
|
217
|
+
User Request → PO → Business BA → Architect → Technical BA → QE (docs) → Dev → QE (testing) → Deploy
|
|
160
218
|
\`\`\`
|
|
161
219
|
|
|
162
220
|
**Determine current phase** before acting. If unsure, ask: "Which phase are we in?"
|
|
@@ -190,17 +248,30 @@ User Request → PO → Business BA → Architect → Technical BA → Dev Teams
|
|
|
190
248
|
|
|
191
249
|
**Role**: Translate business + architecture into implementable specs.
|
|
192
250
|
**Deliverables**: API specs, DB schema, team breakdown, acceptance criteria per ticket.
|
|
193
|
-
**Output**: \`docs/sdlc/ba/technical/\` — **Handoff to Dev
|
|
251
|
+
**Output**: \`docs/sdlc/ba/technical/\` — **Handoff to QE + Dev.**
|
|
252
|
+
|
|
253
|
+
## Phase 5a: QE (Docs phase)
|
|
194
254
|
|
|
195
|
-
|
|
255
|
+
**Role**: Create test plan, test cases before Dev implements.
|
|
256
|
+
**Deliverables**: Test plan, test cases.
|
|
257
|
+
**Output**: \`docs/sdlc/qe/\` — Ready for Dev to start implementation.
|
|
196
258
|
|
|
197
|
-
|
|
198
|
-
**Output**: Code + tests. **Handoff to QE.**
|
|
259
|
+
## Phase 5b: Dev Teams
|
|
199
260
|
|
|
200
|
-
|
|
261
|
+
**Trigger**: After QE docs complete. **Start implementation.**
|
|
201
262
|
|
|
202
|
-
**
|
|
203
|
-
**
|
|
263
|
+
**Roles**:
|
|
264
|
+
- **Tech Lead (15+ yrs)**: Decide tech stack, libraries; review & merge code. Docs: \`docs/sdlc/dev/tech-lead/\`
|
|
265
|
+
- **Senior Developer (10+ yrs)**: Implement features per spec. Docs: \`docs/sdlc/dev/senior-developer/\`
|
|
266
|
+
|
|
267
|
+
**Requirements**: Unit Test coverage **≥ 90%**.
|
|
268
|
+
|
|
269
|
+
**Output**: Code + unit tests. **Handoff to QE (testing).**
|
|
270
|
+
|
|
271
|
+
## Phase 6: QE (Testing phase)
|
|
272
|
+
|
|
273
|
+
**Trigger**: After Dev completes unit tests.
|
|
274
|
+
**Role**: Run tests, include **automation tests**, sign-off.
|
|
204
275
|
**Output**: Test report. **Handoff to Deploy.**
|
|
205
276
|
|
|
206
277
|
## Phase 7: Deploy & Maintenance
|
|
@@ -216,8 +287,9 @@ User Request → PO → Business BA → Architect → Technical BA → Dev Teams
|
|
|
216
287
|
| 2 | Business BA | FRS, process flows |
|
|
217
288
|
| 3 | Architect | ADRs, system diagrams |
|
|
218
289
|
| 4 | Technical BA | API specs, tech breakdown |
|
|
219
|
-
|
|
|
220
|
-
|
|
|
290
|
+
| 5a | QE (docs) | Test plan, test cases |
|
|
291
|
+
| 5b | Dev | Code, unit tests (≥90%) |
|
|
292
|
+
| 6 | QE (testing) | Automation + manual, sign-off |
|
|
221
293
|
| 7 | Ops | Deploy, monitor |
|
|
222
294
|
|
|
223
295
|
See reference.md for templates.
|
|
@@ -240,9 +312,13 @@ POST /api/v1/[resource] — Purpose, Request, Response, Contract
|
|
|
240
312
|
|
|
241
313
|
## QE: Test Case
|
|
242
314
|
TC-001: [Scenario] — Precondition, Steps, Expected, Links to AC
|
|
315
|
+
|
|
316
|
+
## Dev Team
|
|
317
|
+
- Tech Lead (15+ yrs): tech stack, libraries, review & merge → docs/sdlc/dev/tech-lead/
|
|
318
|
+
- Senior Dev (10+ yrs): implement, Unit Test ≥90% → docs/sdlc/dev/senior-developer/
|
|
243
319
|
`;
|
|
244
320
|
|
|
245
|
-
const
|
|
321
|
+
const AGENTS_MD_CONTENT = `## SDLC Workflow
|
|
246
322
|
|
|
247
323
|
When working on requirements, features, or handoffs, follow these phases:
|
|
248
324
|
|
|
@@ -250,11 +326,27 @@ When working on requirements, features, or handoffs, follow these phases:
|
|
|
250
326
|
2. **Business BA** — FRS, process flows → docs/sdlc/ba/business/
|
|
251
327
|
3. **Architect** — ADRs, diagrams → docs/sdlc/architecture/
|
|
252
328
|
4. **Technical BA** — API specs, team breakdown → docs/sdlc/ba/technical/
|
|
253
|
-
5. **
|
|
254
|
-
6. **
|
|
255
|
-
7. **
|
|
329
|
+
5. **QE (docs)** — Test plan, test cases → docs/sdlc/qe/
|
|
330
|
+
6. **Dev** — After QE docs: Tech Lead (15+ yrs, tech stack, review & merge) + Senior Dev (10+ yrs, implement, Unit Test ≥90%) → docs/sdlc/dev/{role}/
|
|
331
|
+
7. **QE (testing)** — After Dev unit tests: automation + manual, sign-off
|
|
332
|
+
8. **Deploy** — Release, monitor
|
|
256
333
|
|
|
257
|
-
Flow:
|
|
334
|
+
Flow: ... → Technical BA → QE docs → Dev → QE testing → Deploy
|
|
335
|
+
Ask "Which phase are we in?" if unclear.
|
|
336
|
+
`;
|
|
337
|
+
|
|
338
|
+
const CLAUDE_SDLC_CONTENT = `## SDLC Workflow
|
|
339
|
+
|
|
340
|
+
1. **PO** — PRD, user stories → docs/sdlc/po/
|
|
341
|
+
2. **Business BA** — FRS, process flows → docs/sdlc/ba/business/
|
|
342
|
+
3. **Architect** — ADRs, diagrams → docs/sdlc/architecture/
|
|
343
|
+
4. **Technical BA** — API specs, team breakdown → docs/sdlc/ba/technical/
|
|
344
|
+
5. **QE (docs)** — Test plan, test cases → docs/sdlc/qe/
|
|
345
|
+
6. **Dev** — After QE docs: Tech Lead (15+ yrs, tech stack, review & merge) + Senior Dev (10+ yrs, implement, Unit Test ≥90%) → docs/sdlc/dev/{role}/
|
|
346
|
+
7. **QE (testing)** — After Dev unit tests: automation + manual, sign-off
|
|
347
|
+
8. **Deploy** — Release, monitor
|
|
348
|
+
|
|
349
|
+
Flow: ... → Technical BA → QE docs → Dev → QE testing → Deploy
|
|
258
350
|
Ask "Which phase are we in?" if unclear.
|
|
259
351
|
`;
|
|
260
352
|
|
|
@@ -266,7 +358,7 @@ For Cursor, see .cursor/rules/sdlc-workflow.mdc
|
|
|
266
358
|
## Flow
|
|
267
359
|
|
|
268
360
|
\`\`\`
|
|
269
|
-
User Request → PO → Business BA → Architect → Technical BA →
|
|
361
|
+
User Request → PO → Business BA → Architect → Technical BA → QE (docs) → Dev → QE (testing) → Deploy
|
|
270
362
|
\`\`\`
|
|
271
363
|
|
|
272
364
|
## Phase Checklist
|
|
@@ -278,8 +370,9 @@ User Request → PO → Business BA → Architect → Technical BA → Dev Teams
|
|
|
278
370
|
| 2 | Business BA | FRS, process flows |
|
|
279
371
|
| 3 | Architect | ADRs, system diagrams |
|
|
280
372
|
| 4 | Technical BA | API specs, tech breakdown |
|
|
281
|
-
|
|
|
282
|
-
|
|
|
373
|
+
| 5a | QE (docs) | Test plan, test cases |
|
|
374
|
+
| 5b | Dev | Code, unit tests (≥90%) |
|
|
375
|
+
| 6 | QE (testing) | Automation + manual, sign-off |
|
|
283
376
|
| 7 | Ops | Deploy, monitor |
|
|
284
377
|
|
|
285
378
|
## Phase Details
|
|
@@ -300,12 +393,22 @@ User Request → PO → Business BA → Architect → Technical BA → Dev Teams
|
|
|
300
393
|
- API specs, DB schema, team breakdown
|
|
301
394
|
- Output: \`docs/sdlc/ba/technical/\`
|
|
302
395
|
|
|
303
|
-
### Phase
|
|
304
|
-
-
|
|
305
|
-
|
|
306
|
-
### Phase 6: QE
|
|
307
|
-
- Test plan, test cases, sign-off
|
|
396
|
+
### Phase 5a: QE (Docs)
|
|
397
|
+
- Test plan, test cases — **before Dev implements**
|
|
308
398
|
- Output: \`docs/sdlc/qe/\`
|
|
399
|
+
- **Then**: Dev team starts implementation
|
|
400
|
+
|
|
401
|
+
### Phase 5b: Dev Teams
|
|
402
|
+
- **Tech Lead (15+ yrs)**: Tech stack, libraries; review & merge. Output: \`docs/sdlc/dev/tech-lead/\`
|
|
403
|
+
- **Senior Developer (10+ yrs)**: Implement features. Output: \`docs/sdlc/dev/senior-developer/\`
|
|
404
|
+
- **Requirement**: Unit Test coverage **≥ 90%**
|
|
405
|
+
- **Then**: QE starts testing phase
|
|
406
|
+
|
|
407
|
+
### Phase 6: QE (Testing)
|
|
408
|
+
- After Dev unit tests complete: automation tests + manual tests, sign-off
|
|
409
|
+
|
|
410
|
+
### Phase 7: Deploy
|
|
411
|
+
- Release, monitor
|
|
309
412
|
|
|
310
413
|
See [reference.md](./reference.md) for templates.
|
|
311
414
|
`;
|
|
@@ -433,8 +536,31 @@ const QE_TC_TEMPLATE = `## TC-001: [Scenario]
|
|
|
433
536
|
|
|
434
537
|
const QE_README = `# QE (Quality Engineering)
|
|
435
538
|
|
|
436
|
-
|
|
539
|
+
Two phases:
|
|
540
|
+
1. **Docs phase** — Test plan, test cases (before Dev implements). Output ready for Dev team.
|
|
541
|
+
2. **Testing phase** — After Dev completes unit tests: run tests, include automation tests, sign-off.
|
|
542
|
+
|
|
437
543
|
Use test-case.template.md for test cases.
|
|
438
544
|
`;
|
|
439
545
|
|
|
546
|
+
const DEV_TECH_LEAD_README = `# Tech Lead (15+ years exp)
|
|
547
|
+
|
|
548
|
+
**Responsibilities**:
|
|
549
|
+
- Decide tech stack, frameworks, libraries
|
|
550
|
+
- Review and merge code
|
|
551
|
+
- Ensure architecture alignment
|
|
552
|
+
|
|
553
|
+
**Docs**: ADRs, tech decisions, review checklist.
|
|
554
|
+
`;
|
|
555
|
+
|
|
556
|
+
const DEV_SENIOR_README = `# Senior Developer (10+ years exp)
|
|
557
|
+
|
|
558
|
+
**Responsibilities**:
|
|
559
|
+
- Implement features per Technical BA spec
|
|
560
|
+
- Write code with Unit Test coverage **≥ 90%**
|
|
561
|
+
- Follow Tech Lead's tech decisions
|
|
562
|
+
|
|
563
|
+
**Docs**: Implementation notes, API usage.
|
|
564
|
+
`;
|
|
565
|
+
|
|
440
566
|
main();
|