ai-developer-skill-os 7.0.2 → 7.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/AGENTS.md +44 -88
- package/.agents/CHANGELOG.md +69 -0
- package/.agents/LICENSE +21 -0
- package/.agents/README.md +59 -0
- package/.agents/_template/BEHAVIOR_SPEC.md +96 -0
- package/.agents/_template/examples/example-en.md +49 -0
- package/.agents/_template/examples/example-vi.md +49 -0
- package/.agents/docs/CHI_TIET_SKILLS.md +125 -0
- package/.agents/docs/GOVERNANCE.md +40 -0
- package/.agents/docs/HUONG_DAN_SU_DUNG.md +120 -0
- package/.agents/docs/SPEC.md +87 -0
- package/.agents/docs/adr/0001-intent-based-architecture.md +19 -0
- package/.agents/docs/adr/0002-kernel-freeze.md +21 -0
- package/.agents/docs/adr/0003-risk-based-verification.md +20 -0
- package/.agents/docs/adr/0004-progressive-evidence.md +19 -0
- package/.agents/docs/skill-classification.md +25 -0
- package/.agents/skills/qk-access-policy/SKILL.md +179 -0
- package/.agents/skills/qk-ai-builder/SKILL.md +215 -0
- package/.agents/skills/qk-api-lifecycle/SKILL.md +176 -0
- package/.agents/skills/qk-bug-resolution/SKILL.md +307 -0
- package/.agents/skills/qk-context-loader/SKILL.md +218 -0
- package/.agents/skills/qk-data-lifecycle/SKILL.md +192 -0
- package/.agents/skills/qk-db-optimizer/SKILL.md +196 -0
- package/.agents/skills/qk-design-to-code/SKILL.md +285 -0
- package/.agents/skills/qk-docs/SKILL.md +198 -0
- package/.agents/skills/qk-engineering-standard/SKILL.md +351 -0
- package/.agents/skills/qk-engineering-standard/rules/backend.md +122 -0
- package/.agents/skills/qk-engineering-standard/rules/database.md +3 -0
- package/.agents/skills/qk-engineering-standard/rules/frontend.md +152 -0
- package/.agents/skills/qk-engineering-standard/rules/security.md +3 -0
- package/.agents/skills/qk-engineering-standard/rules/testing.md +3 -0
- package/.agents/skills/qk-fe-api-integration/SKILL.md +326 -0
- package/.agents/skills/qk-feature-delivery/SKILL.md +305 -0
- package/.agents/skills/qk-help/SKILL.md +193 -0
- package/.agents/skills/qk-orchestrator/SKILL.md +277 -0
- package/.agents/skills/qk-orchestrator/references/routing-table.md +77 -0
- package/.agents/skills/qk-production-release/SKILL.md +284 -0
- package/.agents/skills/qk-project-bootstrap/SKILL.md +234 -0
- package/.agents/skills/qk-project-health/SKILL.md +199 -0
- package/.agents/skills/qk-project-memory/SKILL.md +172 -0
- package/.agents/skills/qk-system-evolution/SKILL.md +281 -0
- package/.agents/skills/qk-ui-audit/SKILL.md +314 -0
- package/.agents/skills/qk-ui-audit/references/anti-slop-checklist.md +136 -0
- package/.agents/skills/qk-ui-system-builder/SKILL.md +221 -0
- package/.agents/skills/qk-validation-gate/SKILL.md +359 -0
- package/.agents/skills.json +819 -0
- package/.github/workflows/ci.yml +1 -1
- package/.qk-ai-skill-os/CHANGELOG.md +69 -0
- package/.qk-ai-skill-os/LICENSE +21 -0
- package/.qk-ai-skill-os/README.md +59 -0
- package/.qk-ai-skill-os/_template/BEHAVIOR_SPEC.md +96 -0
- package/.qk-ai-skill-os/_template/examples/example-en.md +49 -0
- package/.qk-ai-skill-os/_template/examples/example-vi.md +49 -0
- package/.qk-ai-skill-os/docs/CHI_TIET_SKILLS.md +125 -0
- package/.qk-ai-skill-os/docs/GOVERNANCE.md +40 -0
- package/.qk-ai-skill-os/docs/HUONG_DAN_SU_DUNG.md +120 -0
- package/.qk-ai-skill-os/docs/SPEC.md +87 -0
- package/.qk-ai-skill-os/docs/adr/0001-intent-based-architecture.md +19 -0
- package/.qk-ai-skill-os/docs/adr/0002-kernel-freeze.md +21 -0
- package/.qk-ai-skill-os/docs/adr/0003-risk-based-verification.md +20 -0
- package/.qk-ai-skill-os/docs/adr/0004-progressive-evidence.md +19 -0
- package/.qk-ai-skill-os/docs/skill-classification.md +25 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-accessibility-audit/SKILL.md +121 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-agent-orchestrator/SKILL.md +179 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-api-integration/SKILL.md +389 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-auth-security/SKILL.md +96 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-backend-architecture/SKILL.md +125 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-bug-fix/SKILL.md +213 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-component-generator/SKILL.md +136 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-context-manager/SKILL.md +175 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-database-engineer/SKILL.md +104 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-deployment/SKILL.md +96 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-design-system/SKILL.md +137 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-form-builder/SKILL.md +140 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-frontend-architecture/SKILL.md +155 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-frontend-debug/SKILL.md +133 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-frontend-performance/SKILL.md +129 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-frontend-testing/SKILL.md +146 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-git-engineer/SKILL.md +304 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-help/SKILL.md +68 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-migration/SKILL.md +284 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-project-audit/SKILL.md +280 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-refactor/SKILL.md +222 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-state-management/SKILL.md +140 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-table-crud-generator/SKILL.md +127 -0
- package/.qk-ai-skill-os/skills/_archive_old_skills/qk-ui-builder/SKILL.md +152 -0
- package/.qk-ai-skill-os/skills/_template/SKILL.md +238 -0
- package/.qk-ai-skill-os/skills/qk-access-policy/SKILL.md +179 -0
- package/.qk-ai-skill-os/skills/qk-ai-builder/SKILL.md +221 -0
- package/.qk-ai-skill-os/skills/qk-api-lifecycle/SKILL.md +176 -0
- package/.qk-ai-skill-os/skills/qk-bug-resolution/SKILL.md +307 -0
- package/.qk-ai-skill-os/skills/qk-context-loader/SKILL.md +218 -0
- package/.qk-ai-skill-os/skills/qk-data-lifecycle/SKILL.md +192 -0
- package/.qk-ai-skill-os/skills/qk-db-optimizer/SKILL.md +196 -0
- package/.qk-ai-skill-os/skills/qk-design-to-code/SKILL.md +291 -0
- package/.qk-ai-skill-os/skills/qk-docs/SKILL.md +198 -0
- package/.qk-ai-skill-os/skills/qk-engineering-standard/SKILL.md +351 -0
- package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/backend.md +122 -0
- package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/database.md +3 -0
- package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/frontend.md +152 -0
- package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/security.md +3 -0
- package/.qk-ai-skill-os/skills/qk-engineering-standard/rules/testing.md +3 -0
- package/.qk-ai-skill-os/skills/qk-fe-api-integration/SKILL.md +326 -0
- package/.qk-ai-skill-os/skills/qk-feature-delivery/SKILL.md +305 -0
- package/.qk-ai-skill-os/skills/qk-help/SKILL.md +193 -0
- package/.qk-ai-skill-os/skills/qk-orchestrator/SKILL.md +277 -0
- package/.qk-ai-skill-os/skills/qk-orchestrator/references/routing-table.md +77 -0
- package/.qk-ai-skill-os/skills/qk-production-release/SKILL.md +290 -0
- package/.qk-ai-skill-os/skills/qk-project-bootstrap/SKILL.md +240 -0
- package/.qk-ai-skill-os/skills/qk-project-health/SKILL.md +199 -0
- package/.qk-ai-skill-os/skills/qk-project-memory/SKILL.md +172 -0
- package/.qk-ai-skill-os/skills/qk-system-evolution/SKILL.md +285 -0
- package/.qk-ai-skill-os/skills/qk-ui-audit/SKILL.md +314 -0
- package/.qk-ai-skill-os/skills/qk-ui-audit/references/anti-slop-checklist.md +136 -0
- package/.qk-ai-skill-os/skills/qk-ui-system-builder/SKILL.md +225 -0
- package/.qk-ai-skill-os/skills/qk-validation-gate/SKILL.md +361 -0
- package/.qk-ai-skill-os/skills.json +819 -0
- package/CLAUDE.md +110 -0
- package/README.md +25 -3
- package/add_lang.js +21 -0
- package/add_lang.py +25 -0
- package/add_sections.py +53 -0
- package/bin/install.js +225 -170
- package/bin/lint.js +122 -0
- package/docs/CHI_TIET_SKILLS.md +26 -26
- package/docs/HUONG_DAN_SU_DUNG.md +3 -3
- package/docs/SPEC.md +70 -20
- package/framework/skill-schema.md +310 -0
- package/package.json +15 -4
- package/patch.js +15 -0
- package/patch.py +89 -0
- package/patch2.py +83 -0
- package/skills/_archive_old_skills/qk-accessibility-audit/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-agent-orchestrator/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-api-integration/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-auth-security/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-backend-architecture/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-bug-fix/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-component-generator/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-context-manager/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-database-engineer/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-deployment/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-design-system/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-form-builder/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-frontend-architecture/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-frontend-debug/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-frontend-performance/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-frontend-testing/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-git-engineer/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-help/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-migration/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-project-audit/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-refactor/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-state-management/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-table-crud-generator/SKILL.md +1 -0
- package/skills/_archive_old_skills/qk-ui-builder/SKILL.md +1 -0
- package/skills/_template/SKILL.md +238 -0
- package/skills/qk-access-policy/SKILL.md +179 -39
- package/skills/qk-ai-builder/SKILL.md +215 -40
- package/skills/qk-api-lifecycle/SKILL.md +176 -46
- package/skills/qk-bug-resolution/SKILL.md +307 -46
- package/skills/qk-context-loader/SKILL.md +218 -43
- package/skills/qk-data-lifecycle/SKILL.md +192 -44
- package/skills/qk-db-optimizer/SKILL.md +196 -41
- package/skills/qk-design-to-code/SKILL.md +285 -46
- package/skills/qk-docs/SKILL.md +198 -40
- package/skills/qk-engineering-standard/SKILL.md +351 -42
- package/skills/qk-fe-api-integration/SKILL.md +326 -55
- package/skills/qk-feature-delivery/SKILL.md +305 -48
- package/skills/qk-help/SKILL.md +178 -23
- package/skills/qk-orchestrator/SKILL.md +277 -42
- package/skills/qk-orchestrator/references/routing-table.md +77 -0
- package/skills/qk-production-release/SKILL.md +284 -41
- package/skills/qk-project-bootstrap/SKILL.md +234 -38
- package/skills/qk-project-health/SKILL.md +199 -40
- package/skills/qk-project-memory/SKILL.md +172 -40
- package/skills/qk-system-evolution/SKILL.md +281 -40
- package/skills/qk-ui-audit/SKILL.md +314 -42
- package/skills/qk-ui-audit/references/anti-slop-checklist.md +136 -0
- package/skills/qk-ui-system-builder/SKILL.md +221 -43
- package/skills/qk-validation-gate/SKILL.md +359 -40
- package/skills.json +813 -824
- package/specs/fixtures/user-payload.json +12 -0
- package/specs/regressions/api-integration-null-fields.yaml +19 -0
- package/temp_fix.js +61 -0
- package/tests/registry.test.js +1 -1
- package/update_template.js +28 -0
- package/skills/qk-policy-engine/SKILL.md +0 -39
|
@@ -1,40 +1,281 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: qk-system-evolution
|
|
3
|
-
category: maintenance
|
|
4
|
-
version: 7.
|
|
5
|
-
description: "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
-
|
|
1
|
+
---
|
|
2
|
+
name: qk-system-evolution
|
|
3
|
+
category: maintenance
|
|
4
|
+
version: 7.5.0
|
|
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
|
+
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
7
|
+
execution_mode: deterministic
|
|
8
|
+
|
|
9
|
+
cost: high
|
|
10
|
+
latency: slow
|
|
11
|
+
risk: high
|
|
12
|
+
side_effects: edit_files
|
|
13
|
+
produces: [code, report, plan]
|
|
14
|
+
consumes: [context-graph, source-code]
|
|
15
|
+
|
|
16
|
+
token_budget:
|
|
17
|
+
max_files_read: 4
|
|
18
|
+
max_lines_per_read: 100
|
|
19
|
+
max_shell_commands: 2
|
|
20
|
+
stop_early: false
|
|
21
|
+
|
|
22
|
+
exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
23
|
+
skill_version: 7.5.0
|
|
24
|
+
runtime_version: 1
|
|
25
|
+
schema_version: 2
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# qk-system-evolution — Safe Upgrade Manager
|
|
29
|
+
|
|
30
|
+
> **Language rule:** Code, identifiers, file names ? English. Explanations, summaries ? Vietnamese.
|
|
31
|
+
|
|
32
|
+
skill_version: 7.5.0
|
|
33
|
+
runtime_version: 1
|
|
34
|
+
schema_version: 2
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Preconditions
|
|
38
|
+
- [ ] Current version and target version are specified
|
|
39
|
+
- [ ] Rollback strategy is defined (git tag OR package-lock.json snapshot)
|
|
40
|
+
- [ ] Existing test suite is available to verify after upgrade
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
On missing precondition:
|
|
44
|
+
EXIT: BLOCKED
|
|
45
|
+
Message: "Rollback plan required before any major upgrade. Specify: target version + rollback method."
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
skill_version: 7.5.0
|
|
49
|
+
runtime_version: 1
|
|
50
|
+
schema_version: 2
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Scope
|
|
54
|
+
- ✅ Read official Changelog/Migration Guide for breaking changes
|
|
55
|
+
- ✅ Apply incremental upgrades (not big-bang)
|
|
56
|
+
- ✅ Verify each step with existing tests
|
|
57
|
+
- ✅ Document rollback procedure
|
|
58
|
+
|
|
59
|
+
## Non-Goals
|
|
60
|
+
- ❌ Blindly run `npm update` — only targeted upgrades
|
|
61
|
+
- ❌ Skip reading Changelog for major version bumps
|
|
62
|
+
- ❌ Upgrade multiple major versions at once (one at a time)
|
|
63
|
+
|
|
64
|
+
skill_version: 7.5.0
|
|
65
|
+
runtime_version: 1
|
|
66
|
+
schema_version: 2
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Priority Order
|
|
70
|
+
|
|
71
|
+
| Priority | Check | Skip Threshold |
|
|
72
|
+
|----------|-------|----------------|
|
|
73
|
+
| P1 | Read Changelog for breaking changes | Never |
|
|
74
|
+
| P2 | Snapshot rollback point (git tag) | Never |
|
|
75
|
+
| P3 | Apply upgrade to package.json only | Never |
|
|
76
|
+
| P4 | Run tests to detect breakage | Never |
|
|
77
|
+
| P5 | Fix breaking changes if minor (< 3 files affected) | Budget < 40% |
|
|
78
|
+
| P6 | Update documentation/README | Budget < 70% |
|
|
79
|
+
|
|
80
|
+
skill_version: 7.5.0
|
|
81
|
+
runtime_version: 1
|
|
82
|
+
schema_version: 2
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Workflow
|
|
86
|
+
|
|
87
|
+
### Phase 1 — Breaking Change Analysis
|
|
88
|
+
|
|
89
|
+
**Steps:**
|
|
90
|
+
1. `view_file` or `read_url` — read official Changelog for target version
|
|
91
|
+
2. List all `BREAKING CHANGE` entries
|
|
92
|
+
3. Map each breaking change to affected files in current codebase (`grep_search`)
|
|
93
|
+
|
|
94
|
+
**Decision:**
|
|
95
|
+
```
|
|
96
|
+
IF 0 breaking changes
|
|
97
|
+
→ Confidence: HIGH → go to Phase 2 (minor/patch upgrade)
|
|
98
|
+
|
|
99
|
+
IF 1–3 breaking changes, all in < 5 files
|
|
100
|
+
→ Confidence: MEDIUM → go to Phase 2
|
|
101
|
+
|
|
102
|
+
IF > 3 breaking changes OR affects core files
|
|
103
|
+
→ EXIT: BLOCKED — this is architectural migration, not an upgrade
|
|
104
|
+
→ Recommend: plan as a dedicated migration project
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
skill_version: 7.5.0
|
|
108
|
+
runtime_version: 1
|
|
109
|
+
schema_version: 2
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
### Phase 2 — Rollback Snapshot
|
|
113
|
+
|
|
114
|
+
**Steps:**
|
|
115
|
+
1. Verify `git tag` or instruct user to create one: `git tag pre-upgrade-[package]-[version]`
|
|
116
|
+
2. Copy `package-lock.json` snapshot reference
|
|
117
|
+
3. Document exact rollback command:
|
|
118
|
+
```
|
|
119
|
+
Rollback: git checkout pre-upgrade-[package]-[version]
|
|
120
|
+
OR: npm install [package]@[previous-version]
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Exit When:** Rollback procedure documented → go to Phase 3
|
|
124
|
+
|
|
125
|
+
skill_version: 7.5.0
|
|
126
|
+
runtime_version: 1
|
|
127
|
+
schema_version: 2
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
### Phase 3 — Incremental Upgrade
|
|
131
|
+
|
|
132
|
+
**Steps:**
|
|
133
|
+
1. Edit `package.json` — change version (one package at a time)
|
|
134
|
+
2. Apply code changes for breaking changes (using `replace_file_content`)
|
|
135
|
+
3. Run: `npm install` (1 command)
|
|
136
|
+
|
|
137
|
+
**Decision:**
|
|
138
|
+
```
|
|
139
|
+
IF install succeeds
|
|
140
|
+
→ go to Phase 4
|
|
141
|
+
|
|
142
|
+
IF install fails (peer dep conflict)
|
|
143
|
+
→ EXIT: PARTIAL — report conflict, suggest resolution
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
skill_version: 7.5.0
|
|
147
|
+
runtime_version: 1
|
|
148
|
+
schema_version: 2
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
### Phase 4 — Verification
|
|
152
|
+
|
|
153
|
+
**Steps:**
|
|
154
|
+
1. Run tests: `npm test` (2nd command)
|
|
155
|
+
2. Parse test results for failures
|
|
156
|
+
|
|
157
|
+
**Decision:**
|
|
158
|
+
```
|
|
159
|
+
IF all tests pass
|
|
160
|
+
→ EXIT: SUCCESS
|
|
161
|
+
|
|
162
|
+
IF 1–3 tests fail (related to upgrade)
|
|
163
|
+
→ Fix if minor (< 10 lines change per fix)
|
|
164
|
+
→ EXIT: PARTIAL
|
|
165
|
+
|
|
166
|
+
IF > 3 tests fail OR core tests fail
|
|
167
|
+
→ EXIT: FAILED — rollback recommended
|
|
168
|
+
→ Provide exact rollback command
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
skill_version: 7.5.0
|
|
172
|
+
runtime_version: 1
|
|
173
|
+
schema_version: 2
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## Confidence Model
|
|
177
|
+
|
|
178
|
+
| Level | Condition | Action |
|
|
179
|
+
|-------|-----------|--------|
|
|
180
|
+
| HIGH | Changelog read, breaking changes mapped, tests pass | Proceed |
|
|
181
|
+
| MEDIUM | Changelog read, some uncertainties remain | Proceed with caution, note risks |
|
|
182
|
+
| LOW | Cannot access Changelog or no tests available | EXIT: BLOCKED |
|
|
183
|
+
|
|
184
|
+
skill_version: 7.5.0
|
|
185
|
+
runtime_version: 1
|
|
186
|
+
schema_version: 2
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Severity
|
|
190
|
+
|
|
191
|
+
| Level | Definition |
|
|
192
|
+
|-------|-----------|
|
|
193
|
+
| CRITICAL | Core authentication/security package upgrade |
|
|
194
|
+
| HIGH | ORM, framework, or router upgrade |
|
|
195
|
+
| MEDIUM | Utility library, build tool upgrade |
|
|
196
|
+
| LOW | Dev dependency, formatter upgrade |
|
|
197
|
+
|
|
198
|
+
skill_version: 7.5.0
|
|
199
|
+
runtime_version: 1
|
|
200
|
+
schema_version: 2
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
## Evidence Format
|
|
204
|
+
|
|
205
|
+
```
|
|
206
|
+
[SEVERITY] package: [name] v[old] → v[new]
|
|
207
|
+
Breaking changes: [list from Changelog]
|
|
208
|
+
Affected files: [N files — list]
|
|
209
|
+
Confidence: [HIGH|MEDIUM|LOW]
|
|
210
|
+
Rollback: git checkout [tag] OR npm install [name]@[old-version]
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
skill_version: 7.5.0
|
|
214
|
+
runtime_version: 1
|
|
215
|
+
schema_version: 2
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
## Rollback Procedure (Required Output)
|
|
219
|
+
|
|
220
|
+
Every upgrade must document:
|
|
221
|
+
```
|
|
222
|
+
🔄 Rollback Procedure
|
|
223
|
+
─────────────────────────────────────────────────
|
|
224
|
+
Method 1 (Git): git checkout [tag-name]
|
|
225
|
+
Method 2 (npm): npm install [package]@[previous-version]
|
|
226
|
+
Snapshot tag: [pre-upgrade-[package]-[date]]
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
skill_version: 7.5.0
|
|
230
|
+
runtime_version: 1
|
|
231
|
+
schema_version: 2
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## Handoff Contract
|
|
235
|
+
|
|
236
|
+
### Consumes
|
|
237
|
+
```json
|
|
238
|
+
{
|
|
239
|
+
"from": "user",
|
|
240
|
+
"required_fields": ["package_name", "target_version", "rollback_method"],
|
|
241
|
+
"optional_fields": ["changelog_url", "affected_scope"]
|
|
242
|
+
}
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
### Produces
|
|
246
|
+
```json
|
|
247
|
+
{
|
|
248
|
+
"to": "qk-validation-gate",
|
|
249
|
+
"output_fields": ["upgraded_packages", "breaking_changes_fixed", "rollback_procedure", "exit_code"]
|
|
250
|
+
}
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
skill_version: 7.5.0
|
|
254
|
+
runtime_version: 1
|
|
255
|
+
schema_version: 2
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## Escalation Rules
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## Retry Policy
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
---
|
|
270
|
+
## Exit Codes
|
|
271
|
+
|
|
272
|
+
| Code | Meaning | When |
|
|
273
|
+
|------|---------|------|
|
|
274
|
+
| SUCCESS | Upgrade complete, all tests pass | Clean upgrade |
|
|
275
|
+
| PARTIAL | Upgrade done, some tests fail or peer conflict | Needs follow-up |
|
|
276
|
+
| BLOCKED | No rollback plan or too many breaking changes | Plan migration instead |
|
|
277
|
+
| FAILED | Tests fail after upgrade, rollback recommended | Provide rollback command |
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
281
|
+
|
|
@@ -1,42 +1,314 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: qk-ui-audit
|
|
3
|
-
category: qa
|
|
4
|
-
version: 7.
|
|
5
|
-
description: "Kiểm toán giao diện (UI)
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
1
|
+
---
|
|
2
|
+
name: qk-ui-audit
|
|
3
|
+
category: qa
|
|
4
|
+
version: 7.5.0
|
|
5
|
+
description: "Kiểm toán giao diện (UI) với 57-point Anti-Slop checklist — fail nếu score < 90/100."
|
|
6
|
+
platforms: [antigravity, claude-code, cursor, windsurf, kilo-code]
|
|
7
|
+
execution_mode: deterministic
|
|
8
|
+
|
|
9
|
+
cost: medium
|
|
10
|
+
latency: medium
|
|
11
|
+
risk: low
|
|
12
|
+
side_effects: read_only
|
|
13
|
+
produces: [report]
|
|
14
|
+
consumes: [design-md, source-code]
|
|
15
|
+
|
|
16
|
+
token_budget:
|
|
17
|
+
max_files_read: 5
|
|
18
|
+
max_lines_per_read: 150
|
|
19
|
+
max_shell_commands: 0
|
|
20
|
+
stop_early: true
|
|
21
|
+
|
|
22
|
+
exit_codes: [SUCCESS, BLOCKED, FAILED, PARTIAL]
|
|
23
|
+
skill_version: 7.5.0
|
|
24
|
+
runtime_version: 1
|
|
25
|
+
schema_version: 2
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
# qk-ui-audit — Anti-Slop UI Inspector
|
|
29
|
+
|
|
30
|
+
> **Language rule:** Code, identifiers, file names ? English. Explanations, summaries ? Vietnamese.
|
|
31
|
+
|
|
32
|
+
skill_version: 7.5.0
|
|
33
|
+
runtime_version: 1
|
|
34
|
+
schema_version: 2
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Preconditions
|
|
38
|
+
- [ ] `DESIGN.md` exists in project root
|
|
39
|
+
- [ ] Target UI file(s) or component(s) are specified
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
On missing precondition:
|
|
43
|
+
EXIT: BLOCKED
|
|
44
|
+
Message: "DESIGN.md not found. Run qk-project-bootstrap to create one, or provide design tokens manually."
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
skill_version: 7.5.0
|
|
48
|
+
runtime_version: 1
|
|
49
|
+
schema_version: 2
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Scope
|
|
53
|
+
- ✅ Score UI components against DESIGN.md tokens
|
|
54
|
+
- ✅ Detect generic AI-slop aesthetics
|
|
55
|
+
- ✅ Verify ARIA roles and contrast ratios
|
|
56
|
+
- ✅ Validate responsive, interactive, and animation states
|
|
57
|
+
|
|
58
|
+
## Non-Goals
|
|
59
|
+
- ❌ Fix the UI — only audit and report (fixes go to qk-design-to-code)
|
|
60
|
+
- ❌ Pixel-level screenshot comparison
|
|
61
|
+
- ❌ Read entire CSS files — use targeted reads
|
|
62
|
+
|
|
63
|
+
skill_version: 7.5.0
|
|
64
|
+
runtime_version: 1
|
|
65
|
+
schema_version: 2
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## Priority Order
|
|
69
|
+
|
|
70
|
+
| Priority | Category | Points | Skip Threshold |
|
|
71
|
+
|----------|----------|--------|----------------|
|
|
72
|
+
| P1 | Accessibility (ARIA, contrast, keyboard) | 15pts | Never |
|
|
73
|
+
| P2 | Layout & Spacing (tokens, grid, whitespace) | 15pts | Budget < 30% |
|
|
74
|
+
| P3 | Typography & Colors (DESIGN.md compliance) | 15pts | Budget < 50% |
|
|
75
|
+
| P4 | Interactions & Animations (hover, focus, transitions) | 15pts | Budget < 60% |
|
|
76
|
+
| P5 | Anti-Slop Detection (generic templates, slop colors) | 15pts | Budget < 70% |
|
|
77
|
+
| P6 | Performance & Best Practices | 10pts | Budget < 80% |
|
|
78
|
+
| BONUS | Mobile & Cross-browser | 5pts extra | Always optional |
|
|
79
|
+
|
|
80
|
+
**Total: 85 base + 5 bonus = 90 possible. Pass threshold: ≥ 90/100**
|
|
81
|
+
|
|
82
|
+
skill_version: 7.5.0
|
|
83
|
+
runtime_version: 1
|
|
84
|
+
schema_version: 2
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Workflow
|
|
88
|
+
|
|
89
|
+
### Phase 1 — Load Design Contract
|
|
90
|
+
|
|
91
|
+
**Steps:**
|
|
92
|
+
1. `grep_search` for DESIGN.md → read color tokens, spacing scale, typography
|
|
93
|
+
2. Extract key tokens: primary colors (HSL), spacing unit, font families, border-radius, shadow levels
|
|
94
|
+
|
|
95
|
+
**Exit When:**
|
|
96
|
+
- Tokens extracted → go to Phase 2
|
|
97
|
+
- DESIGN.md empty or incomplete → EXIT: BLOCKED
|
|
98
|
+
|
|
99
|
+
skill_version: 7.5.0
|
|
100
|
+
runtime_version: 1
|
|
101
|
+
schema_version: 2
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
### Phase 2 — Scan Target UI
|
|
105
|
+
|
|
106
|
+
**Steps:**
|
|
107
|
+
1. `view_file[targeted]` — read component file(s), focus on className, style, and JSX structure
|
|
108
|
+
2. Check against each Priority category in order (P1 → P6)
|
|
109
|
+
3. Log each finding with Evidence Format
|
|
110
|
+
|
|
111
|
+
**Decision:**
|
|
112
|
+
```
|
|
113
|
+
IF score accumulates ≥ 90 after P1+P2+P3
|
|
114
|
+
→ Can skip P4–P6 if token budget < 40%
|
|
115
|
+
→ EXIT: PARTIAL (pass, but incomplete audit noted)
|
|
116
|
+
|
|
117
|
+
IF CRITICAL violation found (e.g., hardcoded password in UI, broken ARIA)
|
|
118
|
+
→ STOP audit, report immediately
|
|
119
|
+
→ EXIT: FAILED
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**Exit When:**
|
|
123
|
+
- All categories checked → go to Phase 3
|
|
124
|
+
- Token budget < 20% → go to Phase 3 with PARTIAL flag
|
|
125
|
+
|
|
126
|
+
skill_version: 7.5.0
|
|
127
|
+
runtime_version: 1
|
|
128
|
+
schema_version: 2
|
|
129
|
+
---
|
|
130
|
+
|
|
131
|
+
### Phase 3 — Score & Report
|
|
132
|
+
|
|
133
|
+
**Steps:**
|
|
134
|
+
1. Calculate total score per category
|
|
135
|
+
2. Identify top 3 most impactful fixes
|
|
136
|
+
3. Generate report with Evidence Format entries
|
|
137
|
+
|
|
138
|
+
**Decision:**
|
|
139
|
+
```
|
|
140
|
+
IF total score ≥ 90
|
|
141
|
+
→ EXIT: SUCCESS
|
|
142
|
+
|
|
143
|
+
IF total score 70–89
|
|
144
|
+
→ EXIT: PARTIAL — list required fixes
|
|
145
|
+
|
|
146
|
+
IF total score < 70
|
|
147
|
+
→ EXIT: FAILED — demand redesign, not patch
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
skill_version: 7.5.0
|
|
151
|
+
runtime_version: 1
|
|
152
|
+
schema_version: 2
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Confidence Model
|
|
156
|
+
|
|
157
|
+
| Level | Condition | Action |
|
|
158
|
+
|-------|-----------|--------|
|
|
159
|
+
| HIGH | Token clearly absent/present, ARIA attribute visible | Report directly |
|
|
160
|
+
| MEDIUM | Inferred from surrounding code patterns | Note assumption |
|
|
161
|
+
| LOW | Cannot verify without rendering (e.g., animation timing) | Mark as "unverifiable — manual check required" |
|
|
162
|
+
|
|
163
|
+
skill_version: 7.5.0
|
|
164
|
+
runtime_version: 1
|
|
165
|
+
schema_version: 2
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## Severity
|
|
169
|
+
|
|
170
|
+
| Level | Definition | Example |
|
|
171
|
+
|-------|-----------|---------|
|
|
172
|
+
| CRITICAL | Accessibility violation blocking disabled users | Missing alt text, contrast ratio < 3:1 |
|
|
173
|
+
| HIGH | Design system contract broken | Hardcoded hex color not in DESIGN.md |
|
|
174
|
+
| MEDIUM | UX degraded, workaround exists | Missing hover state, no loading indicator |
|
|
175
|
+
| LOW | Minor inconsistency | Spacing off by 1 unit |
|
|
176
|
+
|
|
177
|
+
skill_version: 7.5.0
|
|
178
|
+
runtime_version: 1
|
|
179
|
+
schema_version: 2
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Evidence Format
|
|
183
|
+
|
|
184
|
+
```
|
|
185
|
+
[SEVERITY] path/to/Component.tsx:LINE
|
|
186
|
+
Category: [Accessibility|Layout|Typography|Interaction|Anti-Slop|Performance]
|
|
187
|
+
Reason: [specific violation description]
|
|
188
|
+
Confidence: [HIGH|MEDIUM|LOW]
|
|
189
|
+
Fix: [one-line actionable suggestion]
|
|
190
|
+
Points: -N pts
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**Example:**
|
|
194
|
+
```
|
|
195
|
+
[HIGH] src/components/Button.tsx:23
|
|
196
|
+
Category: Typography
|
|
197
|
+
Reason: font-size hardcoded as "16px" — should use DESIGN.md token `--font-size-base`
|
|
198
|
+
Confidence: HIGH
|
|
199
|
+
Fix: Replace with `var(--font-size-base)`
|
|
200
|
+
Points: -3 pts
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
skill_version: 7.5.0
|
|
204
|
+
runtime_version: 1
|
|
205
|
+
schema_version: 2
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## Retry Policy
|
|
209
|
+
```
|
|
210
|
+
Audit is read-only — no retry needed.
|
|
211
|
+
If file is inaccessible → note as PARTIAL and continue with other files.
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
skill_version: 7.5.0
|
|
215
|
+
runtime_version: 1
|
|
216
|
+
schema_version: 2
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Escalation Rules
|
|
220
|
+
|
|
221
|
+
```
|
|
222
|
+
BLOCKED: DESIGN.md missing or unreadable
|
|
223
|
+
Missing:
|
|
224
|
+
- DESIGN.md with color tokens, spacing scale, typography definition
|
|
225
|
+
Questions:
|
|
226
|
+
1. Có file design system nào khác không? (tokens.css, theme.ts, etc.)
|
|
227
|
+
2. Bạn có thể cung cấp màu sắc / font / spacing chính của dự án không?
|
|
228
|
+
Recommended Assumptions (if proceeding):
|
|
229
|
+
- Use industry-standard: 8px spacing unit, Inter font, neutral gray palette
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
skill_version: 7.5.0
|
|
233
|
+
runtime_version: 1
|
|
234
|
+
schema_version: 2
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## Handoff Contract
|
|
238
|
+
|
|
239
|
+
### Consumes
|
|
240
|
+
```json
|
|
241
|
+
{
|
|
242
|
+
"from": "user or qk-orchestrator",
|
|
243
|
+
"required_fields": ["target_component_path", "design_md_path"],
|
|
244
|
+
"optional_fields": ["specific_checklist_categories"]
|
|
245
|
+
}
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
### Produces
|
|
249
|
+
```json
|
|
250
|
+
{
|
|
251
|
+
"to": "qk-design-to-code (if fixes needed)",
|
|
252
|
+
"output_fields": ["audit_score", "violations_list", "top_3_fixes", "exit_code"]
|
|
253
|
+
}
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
skill_version: 7.5.0
|
|
257
|
+
runtime_version: 1
|
|
258
|
+
schema_version: 2
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## Output Format
|
|
262
|
+
|
|
263
|
+
```
|
|
264
|
+
🎨 UI Audit Report
|
|
265
|
+
─────────────────────────────────────────────────
|
|
266
|
+
Component: [path/to/component]
|
|
267
|
+
DESIGN.md: [found | not found]
|
|
268
|
+
|
|
269
|
+
Scores:
|
|
270
|
+
P1 Accessibility: [X/15]
|
|
271
|
+
P2 Layout: [X/15]
|
|
272
|
+
P3 Typography: [X/15]
|
|
273
|
+
P4 Interactions: [X/15]
|
|
274
|
+
P5 Anti-Slop: [X/15]
|
|
275
|
+
P6 Performance: [X/10]
|
|
276
|
+
─────────────────
|
|
277
|
+
Total: [X/85] → [PASS ≥ 90% | FAIL < 90%]
|
|
278
|
+
|
|
279
|
+
Violations (top priority first):
|
|
280
|
+
[SEVERITY] file:LINE — reason — Fix: suggestion (-Xpts)
|
|
281
|
+
|
|
282
|
+
Top 3 Required Fixes:
|
|
283
|
+
1. [Most impactful fix]
|
|
284
|
+
2. [Second fix]
|
|
285
|
+
3. [Third fix]
|
|
286
|
+
|
|
287
|
+
Verdict: [PASS | FAIL — requires redesign]
|
|
288
|
+
Exit Code: [SUCCESS | PARTIAL | FAILED]
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
skill_version: 7.5.0
|
|
292
|
+
runtime_version: 1
|
|
293
|
+
schema_version: 2
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## Exit Codes
|
|
297
|
+
|
|
298
|
+
| Code | Meaning | When |
|
|
299
|
+
|------|---------|------|
|
|
300
|
+
| SUCCESS | Score ≥ 90 — UI passes Anti-Slop | All checks done, no critical violations |
|
|
301
|
+
| PARTIAL | Score 70–89 or incomplete audit | Some categories skipped due to token budget |
|
|
302
|
+
| BLOCKED | DESIGN.md missing or target not specified | Cannot audit without design contract |
|
|
303
|
+
| FAILED | Score < 70 or CRITICAL violation found | Generic slop detected, redesign required |
|
|
304
|
+
|
|
305
|
+
skill_version: 7.5.0
|
|
306
|
+
runtime_version: 1
|
|
307
|
+
schema_version: 2
|
|
308
|
+
---
|
|
309
|
+
|
|
310
|
+
## References
|
|
311
|
+
- Full 57-point checklist: `references/anti-slop-checklist.md`
|
|
312
|
+
|
|
313
|
+
---
|
|
314
|
+
|