ai-developer-skill-os 9.1.2 → 9.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/AGENTS.md +139 -42
- package/.agents/DEV_PROFILE.md +95 -0
- package/.agents/registry/capability-graph.yml +171 -334
- package/.agents/registry/graph.json +37 -19
- package/.agents/registry/index.yaml +59 -13
- package/.agents/registry/skills-index.yml +204 -447
- package/.agents/rules/coding.md +23 -0
- package/.agents/rules/global.md +44 -30
- package/.agents/skills/_template/SKILL.md +2 -377
- package/.agents/skills/qk-access-policy/SKILL.md +98 -473
- package/.agents/skills/qk-agent-observability/SKILL.md +3 -439
- package/.agents/skills/qk-ai-builder/SKILL.md +132 -565
- package/.agents/skills/qk-api-consumer/SKILL.md +256 -0
- package/.agents/skills/qk-api-consumer/capability.yaml +21 -0
- package/.agents/skills/qk-api-consumer/evals/scorecard.yaml +29 -0
- package/.agents/skills/qk-api-lifecycle/SKILL.md +133 -456
- package/.agents/skills/qk-bug-resolution/SKILL.md +128 -561
- package/.agents/skills/qk-code-review/SKILL.md +142 -420
- package/.agents/skills/qk-context-loader/SKILL.md +99 -471
- package/.agents/skills/qk-data-engineer/SKILL.md +119 -340
- package/.agents/skills/qk-data-lifecycle/SKILL.md +89 -488
- package/.agents/skills/qk-db-optimizer/SKILL.md +102 -488
- package/.agents/skills/qk-design-system-engineering/SKILL.md +76 -461
- package/.agents/skills/qk-devops-platform/SKILL.md +77 -463
- package/.agents/skills/qk-docs/SKILL.md +88 -494
- package/.agents/skills/qk-engineering-standard/SKILL.md +4 -588
- package/.agents/skills/qk-fe-api-integration/SKILL.md +343 -343
- package/.agents/skills/qk-fe-api-integration/evals/scorecard.yaml +29 -29
- package/.agents/skills/qk-feature-delivery/SKILL.md +137 -445
- package/.agents/skills/qk-feature-delivery/evals/scorecard.yaml +1 -1
- package/.agents/skills/qk-frontend-architecture/SKILL.md +5 -479
- package/.agents/skills/qk-help/evals/scorecard.yaml +13 -13
- package/.agents/skills/qk-orchestrator/SKILL.md +63 -502
- package/.agents/skills/qk-orchestrator/references/routing-table.md +10 -14
- package/.agents/skills/qk-product-specification/SKILL.md +70 -479
- package/.agents/skills/qk-production-release/SKILL.md +80 -537
- package/.agents/skills/qk-project-audit/SKILL.md +174 -0
- package/.agents/skills/qk-project-bootstrap/SKILL.md +243 -471
- package/.agents/skills/qk-project-health/SKILL.md +97 -496
- package/.agents/skills/qk-project-memory/SKILL.md +76 -21
- package/.agents/skills/qk-refactor/SKILL.md +167 -384
- package/.agents/skills/qk-security-audit/SKILL.md +141 -463
- package/.agents/skills/qk-security-audit/capability.yaml +1 -2
- package/.agents/skills/qk-system-evolution/SKILL.md +343 -343
- package/.agents/skills/qk-system-evolution/evals/scorecard.yaml +26 -26
- package/.agents/skills/qk-test-engineering/SKILL.md +119 -509
- package/.agents/skills/qk-ui-audit/SKILL.md +73 -537
- package/.agents/skills/qk-ui-builder/SKILL.md +521 -482
- package/.agents/skills/qk-ui-system-builder/SKILL.md +68 -514
- package/.agents/skills/qk-upgrade/SKILL.md +301 -0
- package/.agents/skills/qk-upgrade/capability.yaml +24 -0
- package/.agents/skills/qk-upgrade/evals/scorecard.yaml +26 -0
- package/.agents/skills/qk-validation-gate/SKILL.md +4 -603
- package/.agents/skills/qk-web-quality-gate/SKILL.md +85 -463
- package/.agents/workflows/bug-resolution.yml +6 -6
- package/.agents/workflows/context-discovery.yml +94 -0
- package/.agents/workflows/feature-delivery.yml +8 -4
- package/.agents/workflows/refactor.yml +6 -3
- package/.agents/workflows/shared/quality-gate.yml +94 -0
- package/.agents/workflows/skin-governance.yml +115 -0
- package/CHANGELOG.md +38 -0
- package/README.md +173 -67
- package/package.json +2 -2
- package/tooling/build-registry.js +30 -8
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
name: context-discovery
|
|
2
|
+
version: 9.2.0
|
|
3
|
+
description: "Pipeline load context dự án và vẽ dependency graph trước khi thực hiện task — ngăn hallucination kiến trúc."
|
|
4
|
+
|
|
5
|
+
owner:
|
|
6
|
+
type: engineering
|
|
7
|
+
maintained_by: qk-team
|
|
8
|
+
|
|
9
|
+
verification_profile: review
|
|
10
|
+
|
|
11
|
+
triggers:
|
|
12
|
+
- "load context"
|
|
13
|
+
- "tìm hiểu codebase"
|
|
14
|
+
- "explore architecture"
|
|
15
|
+
- "explain the codebase"
|
|
16
|
+
- "trace dependency"
|
|
17
|
+
- "hiểu project"
|
|
18
|
+
- "which skill should i use"
|
|
19
|
+
- "help me choose"
|
|
20
|
+
|
|
21
|
+
ide_binding:
|
|
22
|
+
slash_command: "/discover"
|
|
23
|
+
aliases: ["/context", "/explore", "/research"]
|
|
24
|
+
|
|
25
|
+
steps:
|
|
26
|
+
- id: define_scope
|
|
27
|
+
name: "Xác định phạm vi cần khám phá"
|
|
28
|
+
purpose: "Biết chính xác cần tìm hiểu gì để phục vụ task tiếp theo"
|
|
29
|
+
required: true
|
|
30
|
+
inputs:
|
|
31
|
+
- task_goal # Task người dùng muốn làm sau context load
|
|
32
|
+
outputs:
|
|
33
|
+
- discovery_questions # Các câu hỏi cụ thể cần trả lời
|
|
34
|
+
- entry_points # Files/folders bắt đầu đọc
|
|
35
|
+
actions:
|
|
36
|
+
- "Đặt 3-5 câu hỏi cụ thể cần trả lời (không đọc mọi thứ)"
|
|
37
|
+
- "Ưu tiên: package.json / go.mod / pyproject.toml → biết stack"
|
|
38
|
+
- "Sau đó: src/ structure → biết architecture pattern"
|
|
39
|
+
exit_on_fail: BLOCKED
|
|
40
|
+
|
|
41
|
+
- id: detect_stack
|
|
42
|
+
name: "Phát hiện Stack & Architecture"
|
|
43
|
+
purpose: "Xác định tech stack, project type, và conventions đang dùng"
|
|
44
|
+
required: true
|
|
45
|
+
inputs:
|
|
46
|
+
- entry_points
|
|
47
|
+
outputs:
|
|
48
|
+
- detected_stack # language, framework, DB, CSS, test runner...
|
|
49
|
+
- project_type # web-app / api / data-pipeline / monorepo / ai-agent
|
|
50
|
+
- architecture_pattern # feature-based / domain / layered / atomic
|
|
51
|
+
actions:
|
|
52
|
+
- "Đọc package.json / requirements.txt / go.mod / Cargo.toml"
|
|
53
|
+
- "Đọc cấu trúc thư mục src/ (1 level sâu)"
|
|
54
|
+
- "Tìm config files: tsconfig, prisma/schema, docker-compose, .env.example"
|
|
55
|
+
- "Đọc tối đa 2-3 file entry point để xác nhận pattern"
|
|
56
|
+
|
|
57
|
+
- id: map_dependencies
|
|
58
|
+
name: "Vẽ Dependency Map"
|
|
59
|
+
purpose: "Hiểu component nào phụ thuộc vào component nào"
|
|
60
|
+
required: false
|
|
61
|
+
skip_if: "Task không cần hiểu cross-component dependencies"
|
|
62
|
+
inputs:
|
|
63
|
+
- detected_stack
|
|
64
|
+
- entry_points
|
|
65
|
+
outputs:
|
|
66
|
+
- dependency_map # Key components + their relationships
|
|
67
|
+
- critical_paths # Paths hay bị ảnh hưởng khi thay đổi
|
|
68
|
+
context_budget: 100
|
|
69
|
+
actions:
|
|
70
|
+
- "Dùng grep_search để trace imports, không đọc toàn bộ file"
|
|
71
|
+
- "Đọc targeted sections (≤ 100 lines per read)"
|
|
72
|
+
- "Ghi lại circular deps hay God File nếu phát hiện"
|
|
73
|
+
|
|
74
|
+
- id: synthesize
|
|
75
|
+
name: "Tổng hợp Context"
|
|
76
|
+
purpose: "Đóng gói kết quả sẵn sàng inject vào skill thực thi tiếp theo"
|
|
77
|
+
required: true
|
|
78
|
+
inputs:
|
|
79
|
+
- detected_stack
|
|
80
|
+
- dependency_map
|
|
81
|
+
- discovery_questions
|
|
82
|
+
outputs:
|
|
83
|
+
- context_summary # Stack + Architecture + Key files
|
|
84
|
+
- skill_recommendation # Skill phù hợp nhất cho task hiện tại
|
|
85
|
+
- warnings # Deprecated patterns, risks, anti-patterns phát hiện
|
|
86
|
+
actions:
|
|
87
|
+
- "Viết summary dạng bullet (không dài hơn 10 dòng)"
|
|
88
|
+
- "Đề xuất skill phù hợp nhất nếu chưa được chọn"
|
|
89
|
+
- "Flag pattern cũ hoặc vi phạm convention"
|
|
90
|
+
- "Ghi log execution trace vào evals/traces/ nếu có"
|
|
91
|
+
|
|
92
|
+
escalation:
|
|
93
|
+
max_retries: 1
|
|
94
|
+
on_failure: "Report partial findings với confidence level, list files chưa đọc được"
|
|
@@ -98,7 +98,7 @@ steps:
|
|
|
98
98
|
|
|
99
99
|
- id: verify
|
|
100
100
|
name: "Verify implementation"
|
|
101
|
-
purpose: "Xác nhận feature hoạt động đúng theo acceptance criteria"
|
|
101
|
+
purpose: "Xác nhận feature hoạt động đúng theo acceptance criteria — quality gate bắt buộc"
|
|
102
102
|
required: true
|
|
103
103
|
skip_if: null
|
|
104
104
|
inputs:
|
|
@@ -107,11 +107,15 @@ steps:
|
|
|
107
107
|
- modified_files
|
|
108
108
|
outputs:
|
|
109
109
|
- verification_result
|
|
110
|
-
- unmet_criteria
|
|
110
|
+
- unmet_criteria
|
|
111
|
+
- quality_gate_result # PASS | PARTIAL | FAIL
|
|
111
112
|
actions:
|
|
112
|
-
- "Đối chiếu từng acceptance criterion"
|
|
113
|
+
- "Đối chiếu từng acceptance criterion — list unmet nếu có"
|
|
113
114
|
- "Re-read key implementation sections"
|
|
114
|
-
- "Run
|
|
115
|
+
- "Run linter nếu có (npm run lint / ruff / eslint)"
|
|
116
|
+
- "Run tests nếu có (npm test / pytest / go test)"
|
|
117
|
+
- "Áp dụng shared quality gate → xem: .agents/workflows/shared/quality-gate.yml"
|
|
118
|
+
- " Checklist: universal_checks + feature-delivery specific checks"
|
|
115
119
|
- "Ghi log execution trace vào evals/traces/"
|
|
116
120
|
exit_on_fail: PARTIAL
|
|
117
121
|
|
|
@@ -77,8 +77,8 @@ steps:
|
|
|
77
77
|
- "Không add functionality mới trong khi refactor"
|
|
78
78
|
|
|
79
79
|
- id: verify
|
|
80
|
-
name: "Verify behavior unchanged"
|
|
81
|
-
purpose: "Xác nhận external behavior giống hệt trước refactor"
|
|
80
|
+
name: "Verify behavior unchanged + quality gate"
|
|
81
|
+
purpose: "Xác nhận external behavior giống hệt trước refactor VÀ quality cải thiện"
|
|
82
82
|
required: true
|
|
83
83
|
skip_if: null
|
|
84
84
|
inputs:
|
|
@@ -87,10 +87,13 @@ steps:
|
|
|
87
87
|
outputs:
|
|
88
88
|
- behavior_preserved # true/false
|
|
89
89
|
- test_results # pass/fail/na
|
|
90
|
+
- quality_gate_result # PASS | FAIL
|
|
90
91
|
actions:
|
|
91
92
|
- "Re-read modified sections"
|
|
92
|
-
- "So sánh với current_behavior_summary"
|
|
93
|
+
- "So sánh với current_behavior_summary — behavior PHẢI giống hệt"
|
|
93
94
|
- "Chạy tests nếu có"
|
|
95
|
+
- "Áp dụng shared quality gate → xem: .agents/workflows/shared/quality-gate.yml"
|
|
96
|
+
- " Checklist: universal_checks + refactor specific checks"
|
|
94
97
|
- "Ghi log execution trace vào evals/traces/"
|
|
95
98
|
exit_on_fail: FAILED
|
|
96
99
|
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
name: quality-gate
|
|
2
|
+
version: 9.2.0
|
|
3
|
+
description: "Shared quality gate — embedded vào bước verify của feature-delivery, bug-resolution, refactor. Source of truth duy nhất cho R-C-10 checklist."
|
|
4
|
+
type: shared-step
|
|
5
|
+
|
|
6
|
+
# ─────────────────────────────────────────────────────────────
|
|
7
|
+
# CÁCH DÙNG TRONG WORKFLOW:
|
|
8
|
+
# Trong step verify của workflow, thêm dòng sau vào actions:
|
|
9
|
+
# - "Áp dụng shared quality gate: xem .agents/workflows/shared/quality-gate.yml"
|
|
10
|
+
# Rồi liệt kê CHỈ những check đặc thù của workflow đó.
|
|
11
|
+
#
|
|
12
|
+
# KHÔNG copy toàn bộ checklist này vào workflow — trỏ về file này.
|
|
13
|
+
# Khi cần update checklist: sửa file này, tất cả workflow tự được cập nhật.
|
|
14
|
+
# ─────────────────────────────────────────────────────────────
|
|
15
|
+
|
|
16
|
+
universal_checks:
|
|
17
|
+
description: "Áp dụng cho MỌI workflow có side_effects: edit_files (R-C-10 trong coding.md)"
|
|
18
|
+
items:
|
|
19
|
+
- id: fn-length
|
|
20
|
+
check: "Function length ≤ 40 lines"
|
|
21
|
+
action: "Extract sub-function nếu vi phạm"
|
|
22
|
+
|
|
23
|
+
- id: file-length
|
|
24
|
+
check: "File length ≤ 300 lines"
|
|
25
|
+
action: "Split module nếu vi phạm"
|
|
26
|
+
|
|
27
|
+
- id: nesting-depth
|
|
28
|
+
check: "Nesting depth ≤ 3 levels"
|
|
29
|
+
action: "Extract early return hoặc helper function"
|
|
30
|
+
|
|
31
|
+
- id: cyclomatic
|
|
32
|
+
check: "Cyclomatic complexity ≤ 10"
|
|
33
|
+
action: "Simplify conditions, extract logic"
|
|
34
|
+
|
|
35
|
+
- id: no-silent-errors
|
|
36
|
+
check: "Không có empty catch, không dùng `!` hoặc `as` để bypass type"
|
|
37
|
+
action: "Fix root cause — report BLOCKED nếu không rõ root cause"
|
|
38
|
+
|
|
39
|
+
- id: no-magic-numbers
|
|
40
|
+
check: "Không có magic numbers/strings trong logic"
|
|
41
|
+
action: "Extract thành named constant"
|
|
42
|
+
|
|
43
|
+
- id: dry
|
|
44
|
+
check: "Không có logic lặp ≥ 2 lần"
|
|
45
|
+
action: "Extract thành shared function/util"
|
|
46
|
+
|
|
47
|
+
- id: naming
|
|
48
|
+
check: "Naming conventions: camelCase fn, PascalCase class, UPPER_SNAKE constant"
|
|
49
|
+
action: "Rename theo convention"
|
|
50
|
+
|
|
51
|
+
- id: no-console-log
|
|
52
|
+
check: "Không có console.log/print/fmt.Println debug còn sót"
|
|
53
|
+
action: "Xóa hoặc thay bằng proper logger"
|
|
54
|
+
|
|
55
|
+
- id: root-cause-fix
|
|
56
|
+
check: "Fix là root cause, không phải symptom patch"
|
|
57
|
+
action: "Report BLOCKED nếu root cause chưa rõ"
|
|
58
|
+
|
|
59
|
+
workflow_specific_checks:
|
|
60
|
+
feature-delivery:
|
|
61
|
+
description: "Thêm vào sau universal_checks khi verify feature mới"
|
|
62
|
+
items:
|
|
63
|
+
- id: acceptance-criteria
|
|
64
|
+
check: "Tất cả acceptance criteria đã được đáp ứng"
|
|
65
|
+
action: "List unmet criteria, report PARTIAL nếu còn thiếu"
|
|
66
|
+
- id: run-tests
|
|
67
|
+
check: "Chạy linter + test suite (npm run lint / ruff / eslint / pytest)"
|
|
68
|
+
action: "Fix lint errors trước khi report SUCCESS"
|
|
69
|
+
|
|
70
|
+
bug-resolution:
|
|
71
|
+
description: "Thêm vào sau universal_checks khi verify bug fix"
|
|
72
|
+
items:
|
|
73
|
+
- id: no-regression
|
|
74
|
+
check: "Callers/dependents không bị break"
|
|
75
|
+
action: "Đọc caller files, verify interface không thay đổi"
|
|
76
|
+
- id: security-boundary
|
|
77
|
+
check: "Tuân thủ R-SEC-04 (Security Boundary)"
|
|
78
|
+
action: "Flag nếu fix chạm auth/payment/permission code"
|
|
79
|
+
|
|
80
|
+
refactor:
|
|
81
|
+
description: "Thêm vào sau universal_checks khi verify refactor"
|
|
82
|
+
items:
|
|
83
|
+
- id: behavior-unchanged
|
|
84
|
+
check: "External behavior giống hệt trước refactor"
|
|
85
|
+
action: "So sánh với current_behavior_summary, report FAILED nếu có diff"
|
|
86
|
+
- id: run-tests
|
|
87
|
+
check: "Test suite pass — không có regression"
|
|
88
|
+
action: "Report FAILED + rollback nếu test fail sau refactor"
|
|
89
|
+
|
|
90
|
+
exit_criteria:
|
|
91
|
+
SUCCESS: "Tất cả universal_checks + workflow_specific_checks đều pass"
|
|
92
|
+
PARTIAL: "Universal checks pass, nhưng có workflow-specific check chưa xong (VD: test chưa được viết)"
|
|
93
|
+
FAILED: "Bất kỳ universal check nào fail, hoặc behavior changed sau refactor, hoặc test regression"
|
|
94
|
+
BLOCKED: "Root cause chưa rõ, hoặc thiếu thông tin để verify"
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
name: skin-governance
|
|
2
|
+
version: 9.2.0
|
|
3
|
+
description: "Workflow tối ưu hóa, kiểm định và nâng cấp AI Skin — observe usage, measure success, improve, validate, promote."
|
|
4
|
+
|
|
5
|
+
owner:
|
|
6
|
+
type: engineering
|
|
7
|
+
maintained_by: qk-team
|
|
8
|
+
|
|
9
|
+
verification_profile: skill-evolution
|
|
10
|
+
|
|
11
|
+
triggers:
|
|
12
|
+
- "improve this skill"
|
|
13
|
+
- "tối ưu skill"
|
|
14
|
+
- "why does this skill keep failing"
|
|
15
|
+
- "optimize this workflow"
|
|
16
|
+
- "phân tích usage skill"
|
|
17
|
+
- "nâng cấp skin"
|
|
18
|
+
- "skin governance"
|
|
19
|
+
|
|
20
|
+
ide_binding:
|
|
21
|
+
slash_command: "/skin-tune"
|
|
22
|
+
aliases: ["/evolve-skill", "/skin-governance"]
|
|
23
|
+
|
|
24
|
+
steps:
|
|
25
|
+
- id: observe_usage
|
|
26
|
+
name: "Observe Usage"
|
|
27
|
+
purpose: "Thống kê cách skill được gọi, token consumed, exit codes phân bổ"
|
|
28
|
+
required: true
|
|
29
|
+
inputs:
|
|
30
|
+
- skill_logs
|
|
31
|
+
- evals_traces
|
|
32
|
+
outputs:
|
|
33
|
+
- usage_metrics # trigger_rate, avg_tokens, exit_distribution
|
|
34
|
+
actions:
|
|
35
|
+
- "Đọc evals/traces/ của skill target"
|
|
36
|
+
- "Thống kê trigger rate và token usage per exit code"
|
|
37
|
+
- "Phát hiện pattern gọi sai skill (routing error)"
|
|
38
|
+
|
|
39
|
+
- id: measure_success
|
|
40
|
+
name: "Measure Success Rate"
|
|
41
|
+
purpose: "Đánh giá chất lượng thực thi theo scorecard"
|
|
42
|
+
required: true
|
|
43
|
+
inputs:
|
|
44
|
+
- usage_metrics
|
|
45
|
+
- scorecard_yaml
|
|
46
|
+
outputs:
|
|
47
|
+
- success_rate # % SUCCESS / total runs
|
|
48
|
+
- weak_areas # Steps hay fail nhất
|
|
49
|
+
actions:
|
|
50
|
+
- "Tính SUCCESS / FAILED / PARTIAL / BLOCKED ratio"
|
|
51
|
+
- "Xác định bước nào trong workflow hay bị BLOCKED nhất"
|
|
52
|
+
- "So sánh với threshold trong scorecard.yaml"
|
|
53
|
+
|
|
54
|
+
- id: detect_failure
|
|
55
|
+
name: "Detect Failure Patterns"
|
|
56
|
+
purpose: "Tìm root cause của các lần fail — không đoán mò"
|
|
57
|
+
required: true
|
|
58
|
+
inputs:
|
|
59
|
+
- execution_results
|
|
60
|
+
- evals_traces
|
|
61
|
+
outputs:
|
|
62
|
+
- failure_patterns # Categorized: ambiguous_input | hallucination | budget_overrun | wrong_routing
|
|
63
|
+
actions:
|
|
64
|
+
- "Phân loại lỗi: ambiguous_input / hallucination / budget_overrun / wrong_routing"
|
|
65
|
+
- "Tìm ví dụ cụ thể từ traces"
|
|
66
|
+
- "Ghi root cause evidence cho từng category"
|
|
67
|
+
|
|
68
|
+
- id: improve_skill
|
|
69
|
+
name: "Propose Improvement"
|
|
70
|
+
purpose: "Đề xuất thay đổi cụ thể — không thay đổi ngầm"
|
|
71
|
+
required: true
|
|
72
|
+
inputs:
|
|
73
|
+
- failure_patterns
|
|
74
|
+
- skill_body
|
|
75
|
+
outputs:
|
|
76
|
+
- improvement_proposal # Diff: what to add/remove/change + reason
|
|
77
|
+
actions:
|
|
78
|
+
- "Giảm noise trong instruction (xóa rule không được enforce)"
|
|
79
|
+
- "Cập nhật examples với case thực tế từ traces"
|
|
80
|
+
- "Tinh chỉnh token_budget nếu hay bị overrun"
|
|
81
|
+
- "Cập nhật triggers nếu routing hay sai"
|
|
82
|
+
- "KHÔNG tự sửa — trả proposal để human review"
|
|
83
|
+
human_checkpoint:
|
|
84
|
+
condition: always
|
|
85
|
+
message: "Review improvement proposal trước khi apply vào SKILL.md"
|
|
86
|
+
|
|
87
|
+
- id: validate
|
|
88
|
+
name: "Validate Proposal"
|
|
89
|
+
purpose: "Đảm bảo bản cải tiến không vi phạm governance rules"
|
|
90
|
+
required: true
|
|
91
|
+
inputs:
|
|
92
|
+
- improvement_proposal
|
|
93
|
+
outputs:
|
|
94
|
+
- validation_result # PASS | FAIL với lý do
|
|
95
|
+
actions:
|
|
96
|
+
- "Kiểm tra schema compliance (SPEC.md frontmatter)"
|
|
97
|
+
- "Đảm bảo không tạo scope overlap với skill khác"
|
|
98
|
+
- "Verify triggers không trùng skill khác trong routing table"
|
|
99
|
+
|
|
100
|
+
- id: promote
|
|
101
|
+
name: "Promote to Stable"
|
|
102
|
+
purpose: "Đưa bản cải tiến vào production sau khi đã validate"
|
|
103
|
+
required: true
|
|
104
|
+
inputs:
|
|
105
|
+
- validation_result
|
|
106
|
+
outputs:
|
|
107
|
+
- promoted_skill # version bumped SKILL.md
|
|
108
|
+
actions:
|
|
109
|
+
- "Bump patch version (9.2.x → 9.2.x+1)"
|
|
110
|
+
- "Cập nhật registry: node tooling/generate-registry.js"
|
|
111
|
+
- "Ghi changelog entry"
|
|
112
|
+
|
|
113
|
+
escalation:
|
|
114
|
+
max_retries: 1
|
|
115
|
+
on_failure: "Hủy bỏ bản cải tiến, giữ nguyên version hiện tại, ghi failure reason"
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,44 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
|
|
5
5
|
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
+
## [9.3.1] — 2026-09-14 — EDAOS v9.3: SSOT Trigger Discipline, Full-Body Execution & Complete Documentation
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- **Complete v9.3 Documentation Sync**: Updated `README.md` and `CHANGELOG.md` with comprehensive architectural documentation, active skill breakdown, and governance notes.
|
|
12
|
+
- **SSOT 2-Clause Trigger Standard**: Implemented Anthropic 2-clause standard across all 29 active skills (`qk-*`). Clause 1 defines primary responsibility; Clause 2 defines explicit trigger intents including colloquial Vietnamese triggers ("kể cả khi chỉ nói...").
|
|
13
|
+
- **Closed-Loop 4-Tier Body Architecture**: Completed full execution body across all 29 active skills (Preconditions, In/Out-of-Scope boundaries, Step-by-step pipeline, Role-aware Prompt Templates & Command argument specs).
|
|
14
|
+
- **Direct Terminal Visual Rendering**: Enforced Unicode/ASCII Box Drawing for architectural diagrams, sequence flows, and decision trees directly in terminal output (GEMINI.md).
|
|
15
|
+
- **Vitest Isolation Engine**: Added isolated `vitest.config.js` ignoring external IDE worktrees (`.kilo/`) for fast (<1s) 10/10 test suite execution.
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
- **Boundary Disambiguation**: Resolved trigger overlaps between paired skills:
|
|
19
|
+
- `qk-project-audit` (pre-code gap analysis & feasibility) vs `qk-project-health` (code smells & technical debt audit of running codebase).
|
|
20
|
+
- `qk-ui-audit` (visual consistency & 57-check anti-slop) vs `qk-web-quality-gate` (WCAG a11y, performance, lighthouse).
|
|
21
|
+
- `qk-access-policy` (RBAC/ABAC & auth middleware) vs `qk-security-audit` (OWASP scan & vulnerability detection).
|
|
22
|
+
- **Skill Restructuring & Governance**:
|
|
23
|
+
- Archived `qk-frontend-architecture` and `qk-agent-observability` with deprecation paths.
|
|
24
|
+
- Relocated `qk-engineering-standard` to Behavior Policy Rule (`.agents/rules/coding.md`).
|
|
25
|
+
- Relocated `qk-validation-gate` to Eval Pipeline Engine (`evals/runner.js`).
|
|
26
|
+
- Preserved 3 legacy v9.1 skills (`qk-fe-api-integration`, `qk-help`, `qk-system-evolution`) for zero-breaking backward compatibility.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## [9.2.0] — 2026-09-11 — EDAOS v9.2: Role-Aware Execution & Semantic Naming
|
|
31
|
+
|
|
32
|
+
### Added
|
|
33
|
+
- **DEV_PROFILE.md**: Project-level role and stack context file automatically loaded at session start.
|
|
34
|
+
- **Role Behavior Matrix**: Added 6 developer profiles (`fe`, `be`, `fullstack`, `data`, `ai-engineer`, `devops`) with focus, depth, and skip guidance.
|
|
35
|
+
- **Role-Aware Prompt Templates**: Integrated role-specific templates in key skills.
|
|
36
|
+
|
|
37
|
+
### Changed
|
|
38
|
+
- Renamed `qk-fe-api-integration` → `qk-api-consumer`.
|
|
39
|
+
- Renamed `qk-system-evolution` → `qk-upgrade`.
|
|
40
|
+
- Renamed `qk-project-analyst` → `qk-project-audit`.
|
|
41
|
+
- Renamed workflows: `skill-evolution.yml` → `skin-governance.yml`, `research.yml` → `context-discovery.yml`.
|
|
42
|
+
- Deprecated and removed legacy `qk-help` in favor of `qk-orchestrator`.
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
8
46
|
## [9.0.0] — 2026-08 — EDAOS v9.0: Universal Project Knowledge V1 & Dual-Mode Memory Architecture
|
|
9
47
|
|
|
10
48
|
### Added
|