ai-developer-skill-os 8.2.1 → 8.3.1
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/.agents/LICENSE +21 -21
- package/.agents/README.md +90 -90
- package/.agents/docs/CHI_TIET_SKILLS.md +125 -125
- package/.agents/docs/MIGRATION-CLEANUP-V8.1.3.md +36 -36
- package/.agents/docs/MIGRATION-STATUS.md +35 -35
- package/.agents/docs/MIGRATION-V8.md +10 -10
- package/.agents/docs/V8-CERTIFICATION.md +27 -27
- package/.agents/docs/decisions/ADR-001-v8-migration.md +58 -58
- package/.agents/docs/decisions/ADR-002-workflow-separation.md +50 -50
- package/.agents/docs/decisions/ADR-003-registry-generated.md +54 -54
- package/.agents/docs/decisions/ADR-008-skill-boundary-review.md +27 -27
- package/.agents/registry/capability-graph.yml +67 -25
- package/.agents/registry/graph.json +135 -256
- package/.agents/registry/index.yaml +68 -95
- package/.agents/registry/skills-index.yml +548 -525
- package/.agents/rules/anti-patterns.md +45 -0
- package/.agents/rules/coding.md +10 -0
- package/.agents/rules/command-safety.md +37 -14
- package/.agents/rules/priorities.yml +13 -2
- package/.agents/rules/security.md +47 -7
- package/.agents/rules/skill-quality.md +32 -8
- package/.agents/skills/_template/SKILL.md +133 -132
- package/.agents/skills/_template/capability.yaml +22 -8
- package/.agents/skills/_template/evals/scorecard.yaml +19 -19
- package/.agents/skills/qk-access-policy/SKILL.md +5 -2
- package/.agents/skills/qk-access-policy/capability.yaml +23 -0
- package/.agents/skills/qk-access-policy/evals/scorecard.yaml +36 -0
- package/.agents/skills/qk-agent-observability/SKILL.md +112 -1
- package/.agents/skills/qk-agent-observability/capability.yaml +29 -0
- package/.agents/skills/qk-agent-observability/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-agent-observability/references/scorecard.yaml +80 -0
- package/.agents/skills/qk-ai-builder/SKILL.md +75 -6
- package/.agents/skills/qk-ai-builder/capability.yaml +23 -0
- package/.agents/skills/qk-ai-builder/evals/scorecard.yaml +30 -0
- package/.agents/skills/qk-api-lifecycle/SKILL.md +5 -3
- package/.agents/skills/qk-api-lifecycle/capability.yaml +23 -0
- package/.agents/skills/qk-api-lifecycle/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-bug-resolution/SKILL.md +4 -22
- package/.agents/skills/qk-bug-resolution/capability.yaml +25 -0
- package/.agents/skills/qk-bug-resolution/evals/scorecard.yaml +30 -0
- package/.agents/skills/qk-code-review/SKILL.md +188 -186
- package/.agents/skills/qk-code-review/capability.yaml +23 -0
- package/.agents/skills/qk-code-review/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-context-loader/SKILL.md +4 -12
- package/.agents/skills/qk-context-loader/capability.yaml +23 -0
- package/.agents/skills/qk-context-loader/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-data-lifecycle/SKILL.md +7 -2
- package/.agents/skills/qk-data-lifecycle/capability.yaml +23 -0
- package/.agents/skills/qk-data-lifecycle/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-db-optimizer/SKILL.md +4 -3
- package/.agents/skills/qk-db-optimizer/capability.yaml +22 -0
- package/.agents/skills/qk-db-optimizer/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-design-system-engineering/SKILL.md +235 -112
- package/.agents/skills/qk-design-system-engineering/capability.yaml +25 -0
- package/.agents/skills/qk-design-system-engineering/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-devops-platform/SKILL.md +241 -117
- package/.agents/skills/qk-devops-platform/capability.yaml +29 -0
- package/.agents/skills/qk-devops-platform/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-docs/SKILL.md +4 -2
- package/.agents/skills/qk-docs/capability.yaml +23 -0
- package/.agents/skills/qk-docs/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-engineering-standard/SKILL.md +5 -76
- package/.agents/skills/qk-engineering-standard/capability.yaml +23 -0
- package/.agents/skills/qk-engineering-standard/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-engineering-standard/references/anti-patterns.md +121 -0
- package/.agents/skills/qk-engineering-standard/rules/frontend.md +1 -1
- package/.agents/skills/qk-fe-api-integration/SKILL.md +14 -33
- package/.agents/skills/qk-fe-api-integration/capability.yaml +21 -0
- package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-feature-delivery/SKILL.md +54 -222
- package/.agents/skills/qk-feature-delivery/capability.yaml +24 -0
- package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-frontend-architecture/SKILL.md +258 -134
- package/.agents/skills/qk-frontend-architecture/capability.yaml +28 -0
- package/.agents/skills/qk-frontend-architecture/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-help/SKILL.md +23 -161
- package/.agents/skills/qk-help/capability.yaml +20 -0
- package/.agents/skills/qk-help/evals/scorecard.yaml +13 -0
- package/.agents/skills/qk-orchestrator/SKILL.md +3 -35
- package/.agents/skills/qk-orchestrator/capability.yaml +22 -0
- package/.agents/skills/qk-orchestrator/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-orchestrator/references/routing-table.md +15 -3
- package/.agents/skills/qk-product-specification/SKILL.md +253 -130
- package/.agents/skills/qk-product-specification/capability.yaml +27 -0
- package/.agents/skills/qk-product-specification/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-production-release/SKILL.md +33 -68
- package/.agents/skills/qk-production-release/capability.yaml +27 -0
- package/.agents/skills/qk-production-release/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-project-bootstrap/SKILL.md +59 -8
- package/.agents/skills/qk-project-bootstrap/capability.yaml +23 -0
- package/.agents/skills/qk-project-bootstrap/evals/scorecard.yaml +28 -0
- package/.agents/skills/qk-project-health/SKILL.md +5 -3
- package/.agents/skills/qk-project-health/capability.yaml +23 -0
- package/.agents/skills/qk-project-health/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-project-memory/SKILL.md +4 -2
- package/.agents/skills/qk-project-memory/capability.yaml +23 -0
- package/.agents/skills/qk-project-memory/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-refactor/SKILL.md +117 -0
- package/.agents/skills/qk-refactor/capability.yaml +26 -0
- package/.agents/skills/qk-refactor/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-security-audit/SKILL.md +259 -135
- package/.agents/skills/qk-security-audit/capability.yaml +30 -0
- package/.agents/skills/qk-security-audit/evals/scorecard.yaml +27 -0
- package/.agents/skills/qk-system-evolution/SKILL.md +18 -68
- package/.agents/skills/qk-system-evolution/capability.yaml +24 -0
- package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-test-engineering/SKILL.md +262 -139
- package/.agents/skills/qk-test-engineering/capability.yaml +28 -0
- package/.agents/skills/qk-test-engineering/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-ui-audit/SKILL.md +17 -90
- package/.agents/skills/qk-ui-audit/capability.yaml +23 -0
- package/.agents/skills/qk-ui-audit/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-ui-audit/references/anti-slop-checklist.md +2 -2
- package/.agents/skills/qk-ui-builder/SKILL.md +482 -509
- package/.agents/skills/qk-ui-builder/capability.yaml +29 -0
- package/.agents/skills/qk-ui-builder/references/component-cookbook.md +455 -1191
- package/.agents/skills/qk-ui-system-builder/SKILL.md +2 -6
- package/.agents/skills/qk-ui-system-builder/capability.yaml +25 -0
- package/.agents/skills/qk-ui-system-builder/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-validation-gate/SKILL.md +1 -75
- package/.agents/skills/qk-validation-gate/capability.yaml +23 -0
- package/.agents/skills/qk-validation-gate/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-web-quality-gate/SKILL.md +232 -114
- package/.agents/skills/qk-web-quality-gate/capability.yaml +24 -0
- package/.agents/skills/qk-web-quality-gate/evals/scorecard.yaml +26 -0
- package/.agents/workflows/_schema.yml +146 -109
- package/.agents/workflows/bug-resolution.yml +121 -101
- package/.agents/workflows/code-review.yml +93 -77
- package/.agents/workflows/documentation.yml +90 -75
- package/.agents/workflows/feature-delivery.yml +120 -103
- package/.agents/workflows/production-release.yml +173 -0
- package/.agents/workflows/refactor.yml +99 -81
- package/.agents/workflows/research.yml +75 -60
- package/.agents/workflows/security-audit.yml +115 -72
- package/.agents/workflows/skill-evolution.yml +97 -65
- package/.agents/workflows/spec-driven-development.yml +87 -57
- package/CHANGELOG.md +27 -0
- package/README.md +90 -90
- package/bin/install.js +329 -179
- package/package.json +4 -2
- package/tooling/build-registry.js +186 -186
- package/tooling/fix-refactor.js +8 -0
- package/tooling/sync-versions.js +49 -0
- package/tooling/validate-graph.js +87 -87
- package/.agents/CHANGELOG.md +0 -131
- package/.agents/learnings/draft/README.md +0 -37
- package/.agents/reports/RELEASE-CHECKLIST.md +0 -29
- package/.agents/reports/architecture-audit.md +0 -13
- package/.agents/reports/graph-health.md +0 -20
- package/.agents/reports/skill-audit.md +0 -215
- package/tooling/generate-registry.js +0 -157
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
# ── Identity ───────────────────────────────────────────────
|
|
3
3
|
name: qk-system-evolution
|
|
4
|
-
version: 8.
|
|
4
|
+
version: 8.3.1
|
|
5
5
|
status: stable
|
|
6
6
|
description: "Nâng cấp thư viện/framework an toàn với rollback plan bắt buộc — incremental, không big-bang."
|
|
7
7
|
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
@@ -50,6 +50,8 @@ knowledge_scope:
|
|
|
50
50
|
references:
|
|
51
51
|
- testing
|
|
52
52
|
- architecture
|
|
53
|
+
- security
|
|
54
|
+
- anti-patterns
|
|
53
55
|
|
|
54
56
|
# ── V8: Verification ───────────────────────────────────────
|
|
55
57
|
verification:
|
|
@@ -96,11 +98,6 @@ On missing precondition:
|
|
|
96
98
|
Message: "Rollback plan required before any major upgrade. Specify: target version + rollback method."
|
|
97
99
|
```
|
|
98
100
|
|
|
99
|
-
skill_version: 7.5.0
|
|
100
|
-
runtime_version: 1
|
|
101
|
-
schema_version: 2
|
|
102
|
-
---
|
|
103
|
-
|
|
104
101
|
## Scope
|
|
105
102
|
- ✅ Read official Changelog/Migration Guide for breaking changes
|
|
106
103
|
- ✅ Apply incremental upgrades (not big-bang)
|
|
@@ -112,11 +109,6 @@ schema_version: 2
|
|
|
112
109
|
- ❌ Skip reading Changelog for major version bumps
|
|
113
110
|
- ❌ Upgrade multiple major versions at once (one at a time)
|
|
114
111
|
|
|
115
|
-
skill_version: 7.5.0
|
|
116
|
-
runtime_version: 1
|
|
117
|
-
schema_version: 2
|
|
118
|
-
---
|
|
119
|
-
|
|
120
112
|
## Priority Order
|
|
121
113
|
|
|
122
114
|
| Priority | Check | Skip Threshold |
|
|
@@ -128,19 +120,15 @@ schema_version: 2
|
|
|
128
120
|
| P5 | Fix breaking changes if minor (< 3 files affected) | Budget < 40% |
|
|
129
121
|
| P6 | Update documentation/README | Budget < 70% |
|
|
130
122
|
|
|
131
|
-
skill_version: 7.5.0
|
|
132
|
-
runtime_version: 1
|
|
133
|
-
schema_version: 2
|
|
134
|
-
---
|
|
135
|
-
|
|
136
123
|
## Workflow
|
|
137
124
|
|
|
138
125
|
### Phase 1 — Breaking Change Analysis
|
|
139
126
|
|
|
140
127
|
**Steps:**
|
|
141
|
-
1. `view_file` or `read_url` — read official Changelog for target version
|
|
128
|
+
1. `view_file` or `read_url` — read official Changelog for target version. **Đồng thời kiểm tra Security Advisory (CVEs) của version cũ.**
|
|
142
129
|
2. List all `BREAKING CHANGE` entries
|
|
143
130
|
3. Map each breaking change to affected files in current codebase (`grep_search`)
|
|
131
|
+
4. *Lưu ý:* Nếu đây là bản vá bảo mật khẩn cấp (Security Patch), phải ưu tiên nâng cấp ngay cả khi có minor breaking changes, nhưng vẫn tuân thủ rollback plan.
|
|
144
132
|
|
|
145
133
|
**Decision:**
|
|
146
134
|
```
|
|
@@ -155,11 +143,6 @@ IF > 3 breaking changes OR affects core files
|
|
|
155
143
|
→ Recommend: plan as a dedicated migration project
|
|
156
144
|
```
|
|
157
145
|
|
|
158
|
-
skill_version: 7.5.0
|
|
159
|
-
runtime_version: 1
|
|
160
|
-
schema_version: 2
|
|
161
|
-
---
|
|
162
|
-
|
|
163
146
|
### Phase 2 — Rollback Snapshot
|
|
164
147
|
|
|
165
148
|
**Steps:**
|
|
@@ -173,11 +156,6 @@ schema_version: 2
|
|
|
173
156
|
|
|
174
157
|
**Exit When:** Rollback procedure documented → go to Phase 3
|
|
175
158
|
|
|
176
|
-
skill_version: 7.5.0
|
|
177
|
-
runtime_version: 1
|
|
178
|
-
schema_version: 2
|
|
179
|
-
---
|
|
180
|
-
|
|
181
159
|
### Phase 3 — Incremental Upgrade
|
|
182
160
|
|
|
183
161
|
**Steps:**
|
|
@@ -194,11 +172,6 @@ IF install fails (peer dep conflict)
|
|
|
194
172
|
→ EXIT: PARTIAL — report conflict, suggest resolution
|
|
195
173
|
```
|
|
196
174
|
|
|
197
|
-
skill_version: 7.5.0
|
|
198
|
-
runtime_version: 1
|
|
199
|
-
schema_version: 2
|
|
200
|
-
---
|
|
201
|
-
|
|
202
175
|
### Phase 4 — Verification
|
|
203
176
|
|
|
204
177
|
**Steps:**
|
|
@@ -219,11 +192,6 @@ IF > 3 tests fail OR core tests fail
|
|
|
219
192
|
→ Provide exact rollback command
|
|
220
193
|
```
|
|
221
194
|
|
|
222
|
-
skill_version: 7.5.0
|
|
223
|
-
runtime_version: 1
|
|
224
|
-
schema_version: 2
|
|
225
|
-
---
|
|
226
|
-
|
|
227
195
|
## Confidence Model
|
|
228
196
|
|
|
229
197
|
| Level | Condition | Action |
|
|
@@ -232,11 +200,6 @@ schema_version: 2
|
|
|
232
200
|
| MEDIUM | Changelog read, some uncertainties remain | Proceed with caution, note risks |
|
|
233
201
|
| LOW | Cannot access Changelog or no tests available | EXIT: BLOCKED |
|
|
234
202
|
|
|
235
|
-
skill_version: 7.5.0
|
|
236
|
-
runtime_version: 1
|
|
237
|
-
schema_version: 2
|
|
238
|
-
---
|
|
239
|
-
|
|
240
203
|
## Severity
|
|
241
204
|
|
|
242
205
|
| Level | Definition |
|
|
@@ -246,11 +209,6 @@ schema_version: 2
|
|
|
246
209
|
| MEDIUM | Utility library, build tool upgrade |
|
|
247
210
|
| LOW | Dev dependency, formatter upgrade |
|
|
248
211
|
|
|
249
|
-
skill_version: 7.5.0
|
|
250
|
-
runtime_version: 1
|
|
251
|
-
schema_version: 2
|
|
252
|
-
---
|
|
253
|
-
|
|
254
212
|
## Evidence Format
|
|
255
213
|
|
|
256
214
|
```
|
|
@@ -261,11 +219,6 @@ Confidence: [HIGH|MEDIUM|LOW]
|
|
|
261
219
|
Rollback: git checkout [tag] OR npm install [name]@[old-version]
|
|
262
220
|
```
|
|
263
221
|
|
|
264
|
-
skill_version: 7.5.0
|
|
265
|
-
runtime_version: 1
|
|
266
|
-
schema_version: 2
|
|
267
|
-
---
|
|
268
|
-
|
|
269
222
|
## Rollback Procedure (Required Output)
|
|
270
223
|
|
|
271
224
|
Every upgrade must document:
|
|
@@ -277,11 +230,6 @@ Method 2 (npm): npm install [package]@[previous-version]
|
|
|
277
230
|
Snapshot tag: [pre-upgrade-[package]-[date]]
|
|
278
231
|
```
|
|
279
232
|
|
|
280
|
-
skill_version: 7.5.0
|
|
281
|
-
runtime_version: 1
|
|
282
|
-
schema_version: 2
|
|
283
|
-
---
|
|
284
|
-
|
|
285
233
|
## Handoff Contract
|
|
286
234
|
|
|
287
235
|
### Consumes
|
|
@@ -301,22 +249,25 @@ schema_version: 2
|
|
|
301
249
|
}
|
|
302
250
|
```
|
|
303
251
|
|
|
304
|
-
skill_version: 7.5.0
|
|
305
|
-
runtime_version: 1
|
|
306
|
-
schema_version: 2
|
|
307
|
-
---
|
|
308
|
-
|
|
309
|
-
|
|
310
252
|
---
|
|
311
253
|
|
|
312
254
|
## Escalation Rules
|
|
313
|
-
|
|
314
|
-
|
|
255
|
+
```
|
|
256
|
+
BLOCKED: Missing rollback plan
|
|
257
|
+
Questions:
|
|
258
|
+
1. Bạn muốn rollback bằng git tag hay snapshot?
|
|
259
|
+
2. Có test suite nào để chạy sau khi upgrade không?
|
|
260
|
+
Recommended Assumptions: none
|
|
261
|
+
```
|
|
315
262
|
---
|
|
316
263
|
|
|
317
264
|
## Retry Policy
|
|
318
|
-
|
|
319
|
-
|
|
265
|
+
```
|
|
266
|
+
Install fails due to peer conflict
|
|
267
|
+
└─ run with --legacy-peer-deps
|
|
268
|
+
├─ PASS → log as PARTIAL
|
|
269
|
+
└─ FAIL → DO NOT retry again
|
|
270
|
+
```
|
|
320
271
|
---
|
|
321
272
|
## Exit Codes
|
|
322
273
|
|
|
@@ -329,4 +280,3 @@ schema_version: 2
|
|
|
329
280
|
|
|
330
281
|
---
|
|
331
282
|
|
|
332
|
-
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-system-evolution"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Nâng cấp thư viện/framework an toàn với rollback plan bắt buộc — incremental, không big-bang."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "upgrade-strategy"
|
|
12
|
+
- "rollback-plan"
|
|
13
|
+
references:
|
|
14
|
+
- "testing"
|
|
15
|
+
- "architecture"
|
|
16
|
+
- "security"
|
|
17
|
+
- "anti-patterns"
|
|
18
|
+
eval:
|
|
19
|
+
scorecard: "evals/scorecard.yaml"
|
|
20
|
+
decision_boundary:
|
|
21
|
+
owns:
|
|
22
|
+
- "qk-system-evolution"
|
|
23
|
+
does_not_own: []
|
|
24
|
+
conflicts_with: []
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
name: qk-system-evolution-eval
|
|
2
|
+
description: Đánh giá độ an toàn của quy trình nâng cấp System & Framework
|
|
3
|
+
version: 8.3.1
|
|
4
|
+
threshold: 90 # Việc nâng cấp framework mang rủi ro sập hệ thống rất cao
|
|
5
|
+
|
|
6
|
+
metrics:
|
|
7
|
+
- id: rollback_safety
|
|
8
|
+
name: Cơ chế Rollback bắt buộc
|
|
9
|
+
description: Agent có thiết lập và ghi chép lại lệnh rollback trước khi nâng cấp không?
|
|
10
|
+
weight: 40
|
|
11
|
+
criteria:
|
|
12
|
+
- Phải yêu cầu/lưu lại Rollback command (git tag / version trước đó) trước khi sửa code (40đ)
|
|
13
|
+
|
|
14
|
+
- id: changelog_awareness
|
|
15
|
+
name: Phân tích Breaking Changes
|
|
16
|
+
description: Agent có đọc Changelog thay vì nhắm mắt upgrade không?
|
|
17
|
+
weight: 35
|
|
18
|
+
criteria:
|
|
19
|
+
- Quét và liệt kê các Breaking Changes từ Changelog/Migration Guide trước khi chạy (35đ)
|
|
20
|
+
|
|
21
|
+
- id: incremental_upgrade
|
|
22
|
+
name: Nâng cấp gia tăng (Incremental)
|
|
23
|
+
description: Có nâng cấp từng phần và chạy test xác minh thay vì Big-bang không?
|
|
24
|
+
weight: 25
|
|
25
|
+
criteria:
|
|
26
|
+
- Chạy test ngay sau khi nâng cấp 1 package thay vì update hàng loạt (25đ)
|
|
@@ -1,139 +1,262 @@
|
|
|
1
|
-
---
|
|
2
|
-
# ── Identity ───────────────────────────────────────────────
|
|
3
|
-
name: qk-test-engineering
|
|
4
|
-
version: 8.1
|
|
5
|
-
status: experimental
|
|
6
|
-
description: "Công cụ quyết định chiến lược kiểm thử (Unit, Integration, E2E, Coverage, Regression, Mock)."
|
|
7
|
-
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
8
|
-
|
|
9
|
-
# ── V8: Classification ─────────────────────────────────────
|
|
10
|
-
type: capability
|
|
11
|
-
|
|
12
|
-
intent:
|
|
13
|
-
- testing-strategy
|
|
14
|
-
- unit-test
|
|
15
|
-
- integration-test
|
|
16
|
-
- e2e-test
|
|
17
|
-
- mock-strategy
|
|
18
|
-
- test-coverage
|
|
19
|
-
|
|
20
|
-
complexity:
|
|
21
|
-
level: high
|
|
22
|
-
criteria:
|
|
23
|
-
files_affected: "1-5"
|
|
24
|
-
has_behavior_change: true
|
|
25
|
-
has_external_dependency: true
|
|
26
|
-
has_breaking_change: false
|
|
27
|
-
|
|
28
|
-
triggers:
|
|
29
|
-
- "chiến lược test"
|
|
30
|
-
- "viết test"
|
|
31
|
-
- "mock data"
|
|
32
|
-
- "test coverage"
|
|
33
|
-
|
|
34
|
-
# ── V8: References ─────────────────────────────────────────
|
|
35
|
-
workflow: feature-delivery
|
|
36
|
-
|
|
37
|
-
rules:
|
|
38
|
-
- global
|
|
39
|
-
- coding
|
|
40
|
-
|
|
41
|
-
tools:
|
|
42
|
-
- filesystem
|
|
43
|
-
- terminal
|
|
44
|
-
|
|
45
|
-
related_skills:
|
|
46
|
-
- qk-engineering-standard
|
|
47
|
-
|
|
48
|
-
knowledge_scope:
|
|
49
|
-
domain:
|
|
50
|
-
- testing-strategy
|
|
51
|
-
- quality-assurance
|
|
52
|
-
- unit-testing
|
|
53
|
-
- integration-testing
|
|
54
|
-
- e2e-testing
|
|
55
|
-
- visual-regression
|
|
56
|
-
concepts:
|
|
57
|
-
- test-pyramid
|
|
58
|
-
- mock-strategy
|
|
59
|
-
references:
|
|
60
|
-
- architecture
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
-
|
|
69
|
-
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
-
|
|
93
|
-
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
-
|
|
98
|
-
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
-
|
|
137
|
-
-
|
|
138
|
-
-
|
|
139
|
-
-
|
|
1
|
+
---
|
|
2
|
+
# ── Identity ───────────────────────────────────────────────
|
|
3
|
+
name: qk-test-engineering
|
|
4
|
+
version: 8.3.1
|
|
5
|
+
status: experimental
|
|
6
|
+
description: "Công cụ quyết định chiến lược kiểm thử (Unit, Integration, E2E, Coverage, Regression, Mock)."
|
|
7
|
+
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
8
|
+
|
|
9
|
+
# ── V8: Classification ─────────────────────────────────────
|
|
10
|
+
type: capability
|
|
11
|
+
|
|
12
|
+
intent:
|
|
13
|
+
- testing-strategy
|
|
14
|
+
- unit-test-strategy
|
|
15
|
+
- integration-test-strategy
|
|
16
|
+
- e2e-test-strategy
|
|
17
|
+
- mock-strategy
|
|
18
|
+
- test-coverage-planning
|
|
19
|
+
|
|
20
|
+
complexity:
|
|
21
|
+
level: high
|
|
22
|
+
criteria:
|
|
23
|
+
files_affected: "1-5"
|
|
24
|
+
has_behavior_change: true
|
|
25
|
+
has_external_dependency: true
|
|
26
|
+
has_breaking_change: false
|
|
27
|
+
|
|
28
|
+
triggers:
|
|
29
|
+
- "chiến lược test"
|
|
30
|
+
- "viết test"
|
|
31
|
+
- "mock data"
|
|
32
|
+
- "test coverage"
|
|
33
|
+
|
|
34
|
+
# ── V8: References ─────────────────────────────────────────
|
|
35
|
+
workflow: feature-delivery
|
|
36
|
+
|
|
37
|
+
rules:
|
|
38
|
+
- global
|
|
39
|
+
- coding
|
|
40
|
+
|
|
41
|
+
tools:
|
|
42
|
+
- filesystem
|
|
43
|
+
- terminal
|
|
44
|
+
|
|
45
|
+
related_skills:
|
|
46
|
+
- qk-engineering-standard
|
|
47
|
+
|
|
48
|
+
knowledge_scope:
|
|
49
|
+
domain:
|
|
50
|
+
- testing-strategy
|
|
51
|
+
- quality-assurance
|
|
52
|
+
- unit-testing
|
|
53
|
+
- integration-testing
|
|
54
|
+
- e2e-testing
|
|
55
|
+
- visual-regression
|
|
56
|
+
concepts:
|
|
57
|
+
- test-pyramid
|
|
58
|
+
- mock-strategy
|
|
59
|
+
references:
|
|
60
|
+
- architecture
|
|
61
|
+
- anti-patterns
|
|
62
|
+
- playwright
|
|
63
|
+
- vitest
|
|
64
|
+
- storybook-testing
|
|
65
|
+
|
|
66
|
+
decision_boundary:
|
|
67
|
+
owns:
|
|
68
|
+
- test pyramid
|
|
69
|
+
- coverage strategy
|
|
70
|
+
- regression planning
|
|
71
|
+
does_not_own:
|
|
72
|
+
- business logic implementation
|
|
73
|
+
- writing tests
|
|
74
|
+
conflicts_with: []
|
|
75
|
+
|
|
76
|
+
# ── V8: Verification ───────────────────────────────────────
|
|
77
|
+
verification:
|
|
78
|
+
required: true
|
|
79
|
+
strategy: feature
|
|
80
|
+
|
|
81
|
+
lifecycle:
|
|
82
|
+
promotion_gate:
|
|
83
|
+
requirements:
|
|
84
|
+
tests:
|
|
85
|
+
minimum_pass_rate: 0.95
|
|
86
|
+
usage:
|
|
87
|
+
minimum_runs: 20
|
|
88
|
+
conflicts:
|
|
89
|
+
zero_boundary_violation: true
|
|
90
|
+
evidence:
|
|
91
|
+
required:
|
|
92
|
+
- evaluation_report
|
|
93
|
+
- usage_history
|
|
94
|
+
- boundary_audit
|
|
95
|
+
demotion_gate:
|
|
96
|
+
triggers:
|
|
97
|
+
- repeated_failure
|
|
98
|
+
- boundary_violation
|
|
99
|
+
- outdated_reference
|
|
100
|
+
action:
|
|
101
|
+
change_status: "stable -> experimental"
|
|
102
|
+
|
|
103
|
+
selection:
|
|
104
|
+
priority: medium
|
|
105
|
+
confidence_threshold: 0.80
|
|
106
|
+
|
|
107
|
+
examples: []
|
|
108
|
+
learnings: []
|
|
109
|
+
|
|
110
|
+
# ── V7 Runtime ─────────────────────────────────────────────
|
|
111
|
+
execution_mode: deterministic
|
|
112
|
+
cost: medium
|
|
113
|
+
latency: medium
|
|
114
|
+
risk: low
|
|
115
|
+
side_effects: read_only
|
|
116
|
+
produces: [report, test_plan]
|
|
117
|
+
consumes: [user-description]
|
|
118
|
+
|
|
119
|
+
token_budget:
|
|
120
|
+
max_files_read: 5
|
|
121
|
+
max_lines_per_read: 150
|
|
122
|
+
max_shell_commands: 0
|
|
123
|
+
stop_early: true
|
|
124
|
+
|
|
125
|
+
exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
# qk-test-engineering — Test Engineering Strategist
|
|
129
|
+
|
|
130
|
+
> **Language rule:** Code, identifiers, file names → English. Explanations, summaries → Vietnamese.
|
|
131
|
+
|
|
132
|
+
## Preconditions
|
|
133
|
+
- [ ] Có code hoặc requirement rõ ràng cần kiểm thử.
|
|
134
|
+
|
|
135
|
+
## Scope
|
|
136
|
+
- Đưa ra quyết định chọn loại test (Unit, Integration, E2E) theo Test Pyramid.
|
|
137
|
+
- Thiết kế chiến lược Mock (Mocking vs Stubbing vs Faking).
|
|
138
|
+
- Đánh giá Test Coverage hiện tại và đưa ra target.
|
|
139
|
+
- Quyết định Regression analysis (những phần nào cần test lại khi file A thay đổi).
|
|
140
|
+
- **Bắt buộc thiết kế test case cho ranh giới dữ liệu (Negative Testing / Boundary Testing) để đảm bảo tuân thủ R-SEC-04.**
|
|
141
|
+
- Không tự động sinh test trừ khi user yêu cầu implement, skill này chủ yếu tư vấn architecture và strategy cho QA/Testing.
|
|
142
|
+
|
|
143
|
+
## Non-Goals
|
|
144
|
+
- ❌ Provide implementation outside of Testing Strategy scope
|
|
145
|
+
- ❌ Override explicit user directives without explanation
|
|
146
|
+
- ❌ Guess ambiguous requirements without asking
|
|
147
|
+
|
|
148
|
+
## Priority Order
|
|
149
|
+
|
|
150
|
+
| Priority | Task | Skip Threshold |
|
|
151
|
+
|----------|------|----------------|
|
|
152
|
+
| P1 | Core Testing Strategy analysis and decision making | Never |
|
|
153
|
+
| P2 | Validation of existing patterns | Budget < 30% |
|
|
154
|
+
| P3 | Detailed documentation generation | Budget < 50% |
|
|
155
|
+
| P4 | Edge case exploration | Budget < 70% |
|
|
156
|
+
|
|
157
|
+
## Workflow
|
|
158
|
+
|
|
159
|
+
### Phase 1 — Context Loading
|
|
160
|
+
**Steps:**
|
|
161
|
+
1. Read existing configuration and requirements related to Testing Strategy.
|
|
162
|
+
2. Check for missing preconditions.
|
|
163
|
+
|
|
164
|
+
**Decision:**
|
|
165
|
+
```
|
|
166
|
+
IF context is clear
|
|
167
|
+
→ Confidence: HIGH → go to Phase 2
|
|
168
|
+
ELSE
|
|
169
|
+
→ EXIT: BLOCKED — ask user
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Phase 2 — Analysis & Strategy
|
|
173
|
+
**Steps:**
|
|
174
|
+
1. Analyze the current state against Testing Strategy best practices.
|
|
175
|
+
2. Formulate strategy or audit report based on findings.
|
|
176
|
+
|
|
177
|
+
**Decision:**
|
|
178
|
+
```
|
|
179
|
+
IF strategy/audit is complete
|
|
180
|
+
→ Confidence: HIGH → go to Phase 3
|
|
181
|
+
ELSE IF minor gaps exist
|
|
182
|
+
→ Confidence: MEDIUM → proceed with assumptions noted
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Phase 3 — Finalization
|
|
186
|
+
**Steps:**
|
|
187
|
+
1. Generate final report or configuration.
|
|
188
|
+
2. Prepare handoff data for subsequent skills.
|
|
189
|
+
|
|
190
|
+
## Confidence Model
|
|
191
|
+
|
|
192
|
+
| Level | Condition | Action |
|
|
193
|
+
|-------|-----------|--------|
|
|
194
|
+
| HIGH | All preconditions met, context fully understood | Proceed directly |
|
|
195
|
+
| MEDIUM | Some context missing but safe defaults exist | Proceed and note assumptions |
|
|
196
|
+
| LOW | Core requirements missing | EXIT: BLOCKED |
|
|
197
|
+
|
|
198
|
+
## Severity (for findings)
|
|
199
|
+
|
|
200
|
+
| Level | Definition |
|
|
201
|
+
|-------|-----------|
|
|
202
|
+
| CRITICAL | Severe violation of Testing Strategy principles |
|
|
203
|
+
| HIGH | Significant risk or technical debt |
|
|
204
|
+
| MEDIUM | Suboptimal pattern but functional |
|
|
205
|
+
| LOW | Minor style or documentation issue |
|
|
206
|
+
|
|
207
|
+
## Evidence Format
|
|
208
|
+
|
|
209
|
+
```
|
|
210
|
+
[SEVERITY] Context/File
|
|
211
|
+
Issue: [what was found]
|
|
212
|
+
Confidence: HIGH
|
|
213
|
+
Recommendation: [actionable advice]
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
## Retry Policy
|
|
217
|
+
```
|
|
218
|
+
Task fails due to missing context
|
|
219
|
+
└─ Ask user for clarification
|
|
220
|
+
├─ Provided → Retry Phase 1
|
|
221
|
+
└─ Not provided → EXIT: BLOCKED
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
## Escalation Rules
|
|
225
|
+
|
|
226
|
+
```
|
|
227
|
+
BLOCKED: Missing critical context for Testing Strategy
|
|
228
|
+
Missing:
|
|
229
|
+
- [Specific requirement]
|
|
230
|
+
Questions:
|
|
231
|
+
1. Bạn có thể cung cấp thêm thông tin về yêu cầu này không?
|
|
232
|
+
2. Mục tiêu chính của bạn là gì?
|
|
233
|
+
Recommended Assumptions: none
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
## Handoff Contract
|
|
237
|
+
|
|
238
|
+
### Consumes
|
|
239
|
+
```json
|
|
240
|
+
{
|
|
241
|
+
"from": "user or qk-orchestrator",
|
|
242
|
+
"required_fields": ["context"],
|
|
243
|
+
"optional_fields": ["existing_config"]
|
|
244
|
+
}
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### Produces
|
|
248
|
+
```json
|
|
249
|
+
{
|
|
250
|
+
"to": "user or downstream skill",
|
|
251
|
+
"output_fields": ["strategy_report", "exit_code"]
|
|
252
|
+
}
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
## Exit Codes
|
|
256
|
+
|
|
257
|
+
| Code | Meaning | When |
|
|
258
|
+
|------|---------|------|
|
|
259
|
+
| SUCCESS | Testing Strategy task completed successfully | Strategy/audit generated |
|
|
260
|
+
| PARTIAL | Task completed with assumptions | Medium confidence |
|
|
261
|
+
| BLOCKED | Missing context | Cannot proceed |
|
|
262
|
+
| FAILED | Critical conflict or error | Unresolvable constraint |
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Auto-generated from SKILL.md frontmatter
|
|
2
|
+
schema_version: 1
|
|
3
|
+
id: "qk-test-engineering"
|
|
4
|
+
version: "8.3.1"
|
|
5
|
+
description: "Công cụ quyết định chiến lược kiểm thử (Unit, Integration, E2E, Coverage, Regression, Mock)."
|
|
6
|
+
tools:
|
|
7
|
+
- "filesystem"
|
|
8
|
+
- "terminal"
|
|
9
|
+
knowledge:
|
|
10
|
+
owns:
|
|
11
|
+
- "qk-test-engineering"
|
|
12
|
+
references:
|
|
13
|
+
- "architecture"
|
|
14
|
+
- "anti-patterns"
|
|
15
|
+
- "playwright"
|
|
16
|
+
- "vitest"
|
|
17
|
+
- "storybook-testing"
|
|
18
|
+
eval:
|
|
19
|
+
scorecard: "evals/scorecard.yaml"
|
|
20
|
+
decision_boundary:
|
|
21
|
+
owns:
|
|
22
|
+
- "test pyramid"
|
|
23
|
+
- "coverage strategy"
|
|
24
|
+
- "regression planning"
|
|
25
|
+
does_not_own:
|
|
26
|
+
- "business logic implementation"
|
|
27
|
+
- "writing tests"
|
|
28
|
+
conflicts_with: []
|