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
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
name: production-release
|
|
2
|
+
version: 8.0.0
|
|
3
|
+
description: "Chuẩn bị release production với 8-gate checklist bắt buộc — không pass gate = không deploy."
|
|
4
|
+
|
|
5
|
+
owner:
|
|
6
|
+
type: engineering
|
|
7
|
+
maintained_by: qk-team
|
|
8
|
+
|
|
9
|
+
verification_profile: release-safety
|
|
10
|
+
|
|
11
|
+
triggers:
|
|
12
|
+
- "release production"
|
|
13
|
+
- "deploy production"
|
|
14
|
+
- "chuẩn bị release"
|
|
15
|
+
- "kiểm tra release"
|
|
16
|
+
|
|
17
|
+
ide_binding:
|
|
18
|
+
slash_command: "/release"
|
|
19
|
+
aliases: ["/deploy", "/prod-release"]
|
|
20
|
+
|
|
21
|
+
steps:
|
|
22
|
+
- id: gate_1_validation
|
|
23
|
+
name: "Gate 1: Validation Gate"
|
|
24
|
+
purpose: "Đảm bảo qk-validation-gate đã pass trước khi release"
|
|
25
|
+
required: true
|
|
26
|
+
skip_if: null
|
|
27
|
+
inputs: []
|
|
28
|
+
outputs:
|
|
29
|
+
- validation_result
|
|
30
|
+
actions:
|
|
31
|
+
- "Chạy npm run test:registry"
|
|
32
|
+
- "Chạy npm run lint"
|
|
33
|
+
- "Chạy npm run test:agent"
|
|
34
|
+
- "Chạy npm run test:graph"
|
|
35
|
+
exit_on_fail: FAILED
|
|
36
|
+
human_checkpoint:
|
|
37
|
+
condition: "any validation gate fails"
|
|
38
|
+
message: "Validation gate thất bại. Fix trước khi tiếp tục."
|
|
39
|
+
|
|
40
|
+
- id: gate_2_capability
|
|
41
|
+
name: "Gate 2: Capability Integrity"
|
|
42
|
+
purpose: "Kiểm tra tất cả capability.yaml hợp lệ và không trùng lặp"
|
|
43
|
+
required: true
|
|
44
|
+
skip_if: null
|
|
45
|
+
inputs: []
|
|
46
|
+
outputs:
|
|
47
|
+
- capability_check
|
|
48
|
+
actions:
|
|
49
|
+
- "Validate tất cả capability.yaml files có schema_version: 1"
|
|
50
|
+
- "Kiểm tra không có capability.yaml trùng id"
|
|
51
|
+
- "Verify mỗi skill có SKILL.md tương ứng"
|
|
52
|
+
- "Verify mỗi SKILL.md có capability.yaml tương ứng"
|
|
53
|
+
exit_on_fail: FAILED
|
|
54
|
+
human_checkpoint:
|
|
55
|
+
condition: "capability.yaml missing or invalid"
|
|
56
|
+
message: "Một số capability.yaml bị thiếu hoặc không hợp lệ."
|
|
57
|
+
|
|
58
|
+
- id: gate_3_registry
|
|
59
|
+
name: "Gate 3: Registry Consistency"
|
|
60
|
+
purpose: "Kiểm tra registry files nhất quán với filesystem"
|
|
61
|
+
required: true
|
|
62
|
+
skip_if: null
|
|
63
|
+
inputs: []
|
|
64
|
+
outputs:
|
|
65
|
+
- registry_check
|
|
66
|
+
actions:
|
|
67
|
+
- "Chạy node tooling/build-registry.js"
|
|
68
|
+
- "So sánh index.yaml với filesystem实际"
|
|
69
|
+
- "Kiểm tra graph.json không có cycles"
|
|
70
|
+
- "Kiểm tra không có orphan nodes"
|
|
71
|
+
exit_on_fail: FAILED
|
|
72
|
+
human_checkpoint:
|
|
73
|
+
condition: "registry inconsistency detected"
|
|
74
|
+
message: "Registry không nhất quán với filesystem."
|
|
75
|
+
|
|
76
|
+
- id: gate_4_workflows
|
|
77
|
+
name: "Gate 4: Workflow Validation"
|
|
78
|
+
purpose: "Kiểm tra tất cả workflow files hợp lệ"
|
|
79
|
+
required: true
|
|
80
|
+
skip_if: null
|
|
81
|
+
inputs: []
|
|
82
|
+
outputs:
|
|
83
|
+
- workflow_check
|
|
84
|
+
actions:
|
|
85
|
+
- "Validate tất cả workflow YAML files có schema hợp lệ"
|
|
86
|
+
- "Kiểm tra mỗi workflow có steps, triggers, exit_codes"
|
|
87
|
+
- "Verify mỗi skill reference workflow tồn tại"
|
|
88
|
+
- "Kiểm tra không có workflow reference đến internal"
|
|
89
|
+
exit_on_fail: FAILED
|
|
90
|
+
human_checkpoint:
|
|
91
|
+
condition: "workflow validation fails"
|
|
92
|
+
message: "Một hoặc nhiều workflow không hợp lệ."
|
|
93
|
+
|
|
94
|
+
- id: gate_5_security
|
|
95
|
+
name: "Gate 5: Security Scan"
|
|
96
|
+
purpose: "Quét bảo mật trước khi release"
|
|
97
|
+
required: true
|
|
98
|
+
skip_if: null
|
|
99
|
+
inputs: []
|
|
100
|
+
outputs:
|
|
101
|
+
- security_report
|
|
102
|
+
actions:
|
|
103
|
+
- "Chạy npm audit --production"
|
|
104
|
+
- "grep_search cho secrets, tokens, API keys trong code"
|
|
105
|
+
- "Kiểm tra không có hardcoded credentials"
|
|
106
|
+
- "Verify .env files không bị commit"
|
|
107
|
+
exit_on_fail: FAILED
|
|
108
|
+
human_checkpoint:
|
|
109
|
+
condition: "critical or high security issues found"
|
|
110
|
+
message: "Có vấn đề bảo mật nghiêm trọng. Cần fix trước khi release."
|
|
111
|
+
|
|
112
|
+
- id: gate_6_size
|
|
113
|
+
name: "Gate 6: Bundle & Size Check"
|
|
114
|
+
purpose: "Kiểm tra kích thước bundle và dependencies"
|
|
115
|
+
required: true
|
|
116
|
+
skip_if: null
|
|
117
|
+
inputs: []
|
|
118
|
+
outputs:
|
|
119
|
+
- size_report
|
|
120
|
+
actions:
|
|
121
|
+
- "Chạy npm run build (production mode)"
|
|
122
|
+
- "Kiểm tra bundle size trong giới hạn"
|
|
123
|
+
- "Kiểm tra không có devDependencies trong production"
|
|
124
|
+
- "Verify tree-shaking hoạt động đúng"
|
|
125
|
+
exit_on_fail: FAILED
|
|
126
|
+
human_checkpoint:
|
|
127
|
+
condition: "bundle size exceeds limit"
|
|
128
|
+
message: "Bundle size vượt hạn chế. Cần tối ưu trước khi deploy."
|
|
129
|
+
|
|
130
|
+
- id: gate_7_changelog
|
|
131
|
+
name: "Gate 7: Changelog & Documentation"
|
|
132
|
+
purpose: "Kiểm tra CHANGELOG.md và documentation đã cập nhật"
|
|
133
|
+
required: true
|
|
134
|
+
skip_if: null
|
|
135
|
+
inputs: []
|
|
136
|
+
outputs:
|
|
137
|
+
- docs_check
|
|
138
|
+
actions:
|
|
139
|
+
- "Kiểm tra CHANGELOG.md có entry cho version này"
|
|
140
|
+
- "Verify README.md phản ánh đúng capabilities hiện tại"
|
|
141
|
+
- "Kiểm tra SKILL.md descriptions không bị encoding issues"
|
|
142
|
+
- "Verify capability.yaml descriptions chính xác"
|
|
143
|
+
exit_on_fail: PARTIAL
|
|
144
|
+
human_checkpoint:
|
|
145
|
+
condition: "changelog missing or docs outdated"
|
|
146
|
+
message: "CHANGELOG hoặc documentation chưa cập nhật. Cần fix trước khi release."
|
|
147
|
+
|
|
148
|
+
- id: gate_8_report
|
|
149
|
+
name: "Gate 8: Release Report"
|
|
150
|
+
purpose: "Tạo báo cáo release có signed kết quả tất cả gates"
|
|
151
|
+
required: true
|
|
152
|
+
skip_if: null
|
|
153
|
+
inputs:
|
|
154
|
+
- validation_result
|
|
155
|
+
- capability_check
|
|
156
|
+
- registry_check
|
|
157
|
+
- workflow_check
|
|
158
|
+
- security_report
|
|
159
|
+
- size_report
|
|
160
|
+
- docs_check
|
|
161
|
+
outputs:
|
|
162
|
+
- release_report
|
|
163
|
+
actions:
|
|
164
|
+
- "Tổng hợp tất cả gate results"
|
|
165
|
+
- "Generate structured release report"
|
|
166
|
+
- "Include evidence format cho mỗi gate"
|
|
167
|
+
- "Record exit code và timestamp"
|
|
168
|
+
- "Sign report với qk-team key"
|
|
169
|
+
exit_on_fail: FAILED
|
|
170
|
+
|
|
171
|
+
escalation:
|
|
172
|
+
max_retries: 1
|
|
173
|
+
on_failure: "Report which gates failed and exact fix required. Do NOT deploy."
|
|
@@ -1,81 +1,99 @@
|
|
|
1
|
-
name: refactor
|
|
2
|
-
version: 8.0.0
|
|
3
|
-
description: "Pipeline refactor an toàn: giữ nguyên behavior bên ngoài, cải thiện chất lượng bên trong."
|
|
4
|
-
|
|
5
|
-
owner:
|
|
6
|
-
type: engineering
|
|
7
|
-
maintained_by: qk-team
|
|
8
|
-
|
|
9
|
-
verification_profile: refactor
|
|
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
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
- "
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
- id:
|
|
63
|
-
name: "
|
|
64
|
-
purpose: "
|
|
65
|
-
required: true
|
|
66
|
-
skip_if: null
|
|
67
|
-
inputs:
|
|
68
|
-
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
- "
|
|
75
|
-
- "
|
|
76
|
-
- "
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
1
|
+
name: refactor
|
|
2
|
+
version: 8.0.0
|
|
3
|
+
description: "Pipeline refactor an toàn: giữ nguyên behavior bên ngoài, cải thiện chất lượng bên trong."
|
|
4
|
+
|
|
5
|
+
owner:
|
|
6
|
+
type: engineering
|
|
7
|
+
maintained_by: qk-team
|
|
8
|
+
|
|
9
|
+
verification_profile: refactor
|
|
10
|
+
|
|
11
|
+
triggers:
|
|
12
|
+
- "refactor"
|
|
13
|
+
- "tái cấu trúc"
|
|
14
|
+
- "clean up this code"
|
|
15
|
+
- "simplify"
|
|
16
|
+
- "reduce complexity"
|
|
17
|
+
- "dọn dẹp code"
|
|
18
|
+
|
|
19
|
+
ide_binding:
|
|
20
|
+
slash_command: "/refactor"
|
|
21
|
+
aliases: ["/cleanup", "/simplify"]
|
|
22
|
+
|
|
23
|
+
steps:
|
|
24
|
+
- id: baseline
|
|
25
|
+
name: "Thiết lập baseline"
|
|
26
|
+
purpose: "Hiểu code hiện tại trước khi thay đổi"
|
|
27
|
+
required: true
|
|
28
|
+
skip_if: null
|
|
29
|
+
inputs:
|
|
30
|
+
- target_files
|
|
31
|
+
- refactor_goal # e.g. "extract functions", "reduce complexity", "improve naming"
|
|
32
|
+
outputs:
|
|
33
|
+
- current_behavior_summary # What the code does now
|
|
34
|
+
- pain_points # Specific issues to address
|
|
35
|
+
- test_coverage_status # Có tests không?
|
|
36
|
+
context_budget: 200
|
|
37
|
+
actions:
|
|
38
|
+
- "Đọc toàn bộ target section"
|
|
39
|
+
- "Mô tả behavior hiện tại"
|
|
40
|
+
- "Identify specific code smells"
|
|
41
|
+
exit_on_fail: BLOCKED
|
|
42
|
+
|
|
43
|
+
- id: plan
|
|
44
|
+
name: "Lên kế hoạch refactor"
|
|
45
|
+
purpose: "Quyết định approach để không thay đổi external behavior"
|
|
46
|
+
required: true
|
|
47
|
+
skip_if: null
|
|
48
|
+
inputs:
|
|
49
|
+
- pain_points
|
|
50
|
+
- current_behavior_summary
|
|
51
|
+
outputs:
|
|
52
|
+
- refactor_steps # Ordered list of changes
|
|
53
|
+
- risk_assessment # What could break
|
|
54
|
+
- rollback_point # Git commit or checkpoint
|
|
55
|
+
min_confidence: HIGH
|
|
56
|
+
actions:
|
|
57
|
+
- "Outline từng bước thay đổi"
|
|
58
|
+
- "Xác định gì có thể break"
|
|
59
|
+
human_checkpoint:
|
|
60
|
+
condition: "risk_assessment cho thấy có thể breaking change hoặc thiếu test coverage"
|
|
61
|
+
message: "Refactor rủi ro cao. Vui lòng duyệt qua refactor_steps và risk_assessment."
|
|
62
|
+
- id: execute
|
|
63
|
+
name: "Thực hiện refactor"
|
|
64
|
+
purpose: "Apply changes theo plan, step by step"
|
|
65
|
+
required: true
|
|
66
|
+
skip_if: null
|
|
67
|
+
inputs:
|
|
68
|
+
- refactor_steps
|
|
69
|
+
outputs:
|
|
70
|
+
- modified_files
|
|
71
|
+
- changes_summary
|
|
72
|
+
actions:
|
|
73
|
+
- "Làm từng bước nhỏ, verify sau mỗi bước"
|
|
74
|
+
- "Không refactor ngoài scope đã định"
|
|
75
|
+
- "Chỉ refactor, KHÔNG add behavior mới"
|
|
76
|
+
- "Đảm bảo code sau refactor pass R-C-09"
|
|
77
|
+
- "Không add functionality mới trong khi refactor"
|
|
78
|
+
|
|
79
|
+
- id: verify
|
|
80
|
+
name: "Verify behavior unchanged"
|
|
81
|
+
purpose: "Xác nhận external behavior giống hệt trước refactor"
|
|
82
|
+
required: true
|
|
83
|
+
skip_if: null
|
|
84
|
+
inputs:
|
|
85
|
+
- current_behavior_summary
|
|
86
|
+
- modified_files
|
|
87
|
+
outputs:
|
|
88
|
+
- behavior_preserved # true/false
|
|
89
|
+
- test_results # pass/fail/na
|
|
90
|
+
actions:
|
|
91
|
+
- "Re-read modified sections"
|
|
92
|
+
- "So sánh với current_behavior_summary"
|
|
93
|
+
- "Chạy tests nếu có"
|
|
94
|
+
- "Ghi log execution trace vào evals/traces/"
|
|
95
|
+
exit_on_fail: FAILED
|
|
96
|
+
|
|
97
|
+
escalation:
|
|
98
|
+
max_retries: 1
|
|
99
|
+
on_failure: "Revert to rollback_point. Report what was completed and what remains."
|
|
@@ -1,60 +1,75 @@
|
|
|
1
|
-
name: research
|
|
2
|
-
version: 8.0.0
|
|
3
|
-
description: "Pipeline nghiên cứu codebase để hiểu context, dependency, và architecture trước khi thực hiện task lớn."
|
|
4
|
-
|
|
5
|
-
owner:
|
|
6
|
-
type: engineering
|
|
7
|
-
maintained_by: qk-team
|
|
8
|
-
|
|
9
|
-
verification_profile: review
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
- id:
|
|
25
|
-
name: "
|
|
26
|
-
purpose: "
|
|
27
|
-
required: true
|
|
28
|
-
skip_if: null
|
|
29
|
-
inputs:
|
|
30
|
-
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
-
|
|
51
|
-
-
|
|
52
|
-
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
1
|
+
name: research
|
|
2
|
+
version: 8.0.0
|
|
3
|
+
description: "Pipeline nghiên cứu codebase để hiểu context, dependency, và architecture trước khi thực hiện task lớn."
|
|
4
|
+
|
|
5
|
+
owner:
|
|
6
|
+
type: engineering
|
|
7
|
+
maintained_by: qk-team
|
|
8
|
+
|
|
9
|
+
verification_profile: review
|
|
10
|
+
|
|
11
|
+
triggers:
|
|
12
|
+
- "how does this work"
|
|
13
|
+
- "tìm hiểu codebase"
|
|
14
|
+
- "explore this repo"
|
|
15
|
+
- "nghiên cứu"
|
|
16
|
+
- "explain the architecture"
|
|
17
|
+
- "trace dependency"
|
|
18
|
+
|
|
19
|
+
ide_binding:
|
|
20
|
+
slash_command: "/research"
|
|
21
|
+
aliases: ["/explore", "/explain"]
|
|
22
|
+
|
|
23
|
+
steps:
|
|
24
|
+
- id: define_scope
|
|
25
|
+
name: "Xác định phạm vi nghiên cứu"
|
|
26
|
+
purpose: "Biết chính xác cần tìm hiểu gì để phục vụ task"
|
|
27
|
+
required: true
|
|
28
|
+
skip_if: null
|
|
29
|
+
inputs:
|
|
30
|
+
- research_goal # What decision does this research enable?
|
|
31
|
+
outputs:
|
|
32
|
+
- research_questions # Specific questions to answer
|
|
33
|
+
- entry_points # Files to start reading
|
|
34
|
+
exit_on_fail: BLOCKED
|
|
35
|
+
|
|
36
|
+
- id: explore
|
|
37
|
+
name: "Khám phá codebase"
|
|
38
|
+
purpose: "Thu thập thông tin đủ để trả lời research questions"
|
|
39
|
+
required: true
|
|
40
|
+
skip_if: null
|
|
41
|
+
inputs:
|
|
42
|
+
- entry_points
|
|
43
|
+
- research_questions
|
|
44
|
+
outputs:
|
|
45
|
+
- findings # Answers to research questions
|
|
46
|
+
- dependency_map # How components relate
|
|
47
|
+
- relevant_files # Files most relevant to the task
|
|
48
|
+
context_budget: 100
|
|
49
|
+
actions:
|
|
50
|
+
- "Dùng grep_search để tìm patterns, không đọc toàn bộ repo"
|
|
51
|
+
- "Đọc targeted sections (≤ 100 lines per read)"
|
|
52
|
+
- "Build mental model của dependency relationship"
|
|
53
|
+
|
|
54
|
+
- id: synthesize
|
|
55
|
+
name: "Tổng hợp kết quả"
|
|
56
|
+
purpose: "Trả lời research questions + tạo context cho task tiếp theo"
|
|
57
|
+
required: true
|
|
58
|
+
skip_if: null
|
|
59
|
+
inputs:
|
|
60
|
+
- findings
|
|
61
|
+
- dependency_map
|
|
62
|
+
outputs:
|
|
63
|
+
- context_summary # Ready-to-use context for next skill
|
|
64
|
+
- architecture_notes # Key patterns và conventions
|
|
65
|
+
- warnings # Gotchas, deprecated patterns, risks
|
|
66
|
+
actions:
|
|
67
|
+
- "Viết summary ngắn gọn (không cần exhaustive)"
|
|
68
|
+
- "Flag các pattern cũ/deprecated nếu thấy"
|
|
69
|
+
- "Báo cáo mọi pattern vi phạm R-SEC-04 nếu thấy"
|
|
70
|
+
- "Ghi log execution trace vào evals/traces/"
|
|
71
|
+
- "Liệt kê relevant files để task tiếp theo load"
|
|
72
|
+
|
|
73
|
+
escalation:
|
|
74
|
+
max_retries: 1
|
|
75
|
+
on_failure: "Report partial findings với confidence level"
|