@ngocsangairvds/vsaf 5.1.5 → 5.1.7
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/package.json +1 -1
- package/packages/cli/dist/adapters/antigravity.d.ts.map +1 -1
- package/packages/cli/dist/adapters/antigravity.js +14 -30
- package/packages/cli/dist/adapters/antigravity.js.map +1 -1
- package/packages/cli/dist/adapters/claude.d.ts.map +1 -1
- package/packages/cli/dist/adapters/claude.js +8 -10
- package/packages/cli/dist/adapters/claude.js.map +1 -1
- package/packages/cli/dist/adapters/codex.d.ts.map +1 -1
- package/packages/cli/dist/adapters/codex.js +6 -9
- package/packages/cli/dist/adapters/codex.js.map +1 -1
- package/packages/cli/dist/adapters/cursor.d.ts.map +1 -1
- package/packages/cli/dist/adapters/cursor.js +22 -24
- package/packages/cli/dist/adapters/cursor.js.map +1 -1
- package/packages/cli/dist/commands/init.d.ts.map +1 -1
- package/packages/cli/dist/commands/init.js +7 -19
- package/packages/cli/dist/commands/init.js.map +1 -1
- package/packages/cli/dist/commands/install.d.ts +3 -6
- package/packages/cli/dist/commands/install.d.ts.map +1 -1
- package/packages/cli/dist/commands/install.js +27 -10
- package/packages/cli/dist/commands/install.js.map +1 -1
- package/packages/cli/dist/commands/skill.d.ts.map +1 -1
- package/packages/cli/dist/commands/skill.js +40 -16
- package/packages/cli/dist/commands/skill.js.map +1 -1
- package/packages/cli/dist/index.js +2 -2
- package/packages/cli/dist/index.js.map +1 -1
- package/packages/cli/dist/install/orchestrator.d.ts +0 -8
- package/packages/cli/dist/install/orchestrator.d.ts.map +1 -1
- package/packages/cli/dist/install/orchestrator.js +3 -54
- package/packages/cli/dist/install/orchestrator.js.map +1 -1
- package/packages/cli/dist/server/routes/runs.d.ts.map +1 -1
- package/packages/cli/dist/server/routes/runs.js +81 -3
- package/packages/cli/dist/server/routes/runs.js.map +1 -1
- package/packages/cli/dist/server/routes/workflows.d.ts.map +1 -1
- package/packages/cli/dist/server/routes/workflows.js +76 -17
- package/packages/cli/dist/server/routes/workflows.js.map +1 -1
- package/packages/cli/dist/server/services/execution-manager.d.ts +11 -1
- package/packages/cli/dist/server/services/execution-manager.d.ts.map +1 -1
- package/packages/cli/dist/server/services/execution-manager.js +88 -17
- package/packages/cli/dist/server/services/execution-manager.js.map +1 -1
- package/packages/cli/dist/server/static.d.ts.map +1 -1
- package/packages/cli/dist/server/static.js +4 -1
- package/packages/cli/dist/server/static.js.map +1 -1
- package/packages/cli/dist/server/workflow-path.d.ts +3 -0
- package/packages/cli/dist/server/workflow-path.d.ts.map +1 -0
- package/packages/cli/dist/server/workflow-path.js +25 -0
- package/packages/cli/dist/server/workflow-path.js.map +1 -0
- package/packages/core/dist/store/recovery.d.ts.map +1 -1
- package/packages/core/dist/store/recovery.js +12 -1
- package/packages/core/dist/store/recovery.js.map +1 -1
- package/packages/core/dist/store/run-store.d.ts +3 -0
- package/packages/core/dist/store/run-store.d.ts.map +1 -1
- package/packages/core/dist/store/run-store.js +33 -0
- package/packages/core/dist/store/run-store.js.map +1 -1
- package/packages/core/dist/store/types.d.ts +2 -2
- package/packages/core/dist/store/types.d.ts.map +1 -1
- package/packages/core/dist/store/types.js.map +1 -1
- package/packages/core/dist/store/wal.js +1 -1
- package/packages/core/dist/store/wal.js.map +1 -1
- package/packages/web/dist/web/3rdpartylicenses.txt +26 -26
- package/packages/web/dist/web/browser/chunk-4YPNNQ2T.js +4 -0
- package/packages/web/dist/web/browser/chunk-E227ZHPJ.js +1 -0
- package/packages/web/dist/web/browser/chunk-JFBK3MNW.js +1 -0
- package/packages/web/dist/web/browser/chunk-L2VOQBBI.js +1 -0
- package/packages/web/dist/web/browser/chunk-OJJM5VOH.js +1 -0
- package/packages/web/dist/web/browser/chunk-U2H3QYAG.js +5 -0
- package/packages/web/dist/web/browser/chunk-VA7KFQOR.js +1 -0
- package/packages/web/dist/web/browser/chunk-WV3C6DNH.js +1 -0
- package/packages/web/dist/web/browser/index.html +2 -2
- package/packages/web/dist/web/browser/main-THGFWXYL.js +1 -0
- package/packages/web/dist/web/browser/{styles-JBPZVY54.css → styles-PWTTI45T.css} +1 -1
- package/skills/sdlc/architecture/current-state/SKILL.md +10 -0
- package/skills/sdlc/architecture/current-state/step.md +13 -0
- package/skills/sdlc/architecture/decision/SKILL.md +10 -0
- package/skills/sdlc/architecture/decision/step.md +21 -0
- package/skills/sdlc/architecture/epics/SKILL.md +10 -0
- package/skills/sdlc/architecture/epics/step.md +34 -0
- package/skills/sdlc/architecture/grill/SKILL.md +10 -0
- package/skills/sdlc/architecture/grill/step.md +26 -0
- package/skills/sdlc/architecture/prereq/SKILL.md +10 -0
- package/skills/sdlc/architecture/prereq/step.md +16 -0
- package/skills/sdlc/architecture/readiness/SKILL.md +10 -0
- package/skills/sdlc/architecture/readiness/step.md +76 -0
- package/skills/sdlc/complete/context/SKILL.md +10 -0
- package/skills/sdlc/complete/context/step.md +14 -0
- package/skills/sdlc/complete/knowledge/SKILL.md +10 -0
- package/skills/sdlc/complete/knowledge/step.md +22 -0
- package/skills/sdlc/complete/prereq/SKILL.md +10 -0
- package/skills/sdlc/complete/prereq/step.md +16 -0
- package/skills/sdlc/complete/reindex/SKILL.md +10 -0
- package/skills/sdlc/complete/reindex/step.md +24 -0
- package/skills/sdlc/complete/status/SKILL.md +10 -0
- package/skills/sdlc/complete/status/step.md +52 -0
- package/skills/sdlc/discovery/brainstorm/SKILL.md +10 -0
- package/skills/sdlc/discovery/brainstorm/step.md +27 -0
- package/skills/sdlc/discovery/domain/SKILL.md +10 -0
- package/skills/sdlc/discovery/domain/step.md +13 -0
- package/skills/sdlc/discovery/grill/SKILL.md +10 -0
- package/skills/sdlc/discovery/grill/step.md +22 -0
- package/skills/sdlc/discovery/prereq/SKILL.md +10 -0
- package/skills/sdlc/discovery/prereq/step.md +16 -0
- package/skills/sdlc/discovery/prfaq/SKILL.md +10 -0
- package/skills/sdlc/discovery/prfaq/step.md +68 -0
- package/skills/sdlc/discovery/system/SKILL.md +10 -0
- package/skills/sdlc/discovery/system/step.md +19 -0
- package/skills/sdlc/hotfix/analyze/entry/SKILL.md +10 -0
- package/skills/sdlc/hotfix/analyze/entry/step.md +15 -0
- package/skills/sdlc/hotfix/analyze/exit/SKILL.md +10 -0
- package/skills/sdlc/hotfix/analyze/exit/step.md +19 -0
- package/skills/sdlc/hotfix/analyze/fix-strategy/SKILL.md +10 -0
- package/skills/sdlc/hotfix/analyze/fix-strategy/step.md +15 -0
- package/skills/sdlc/hotfix/analyze/gitnexus/SKILL.md +10 -0
- package/skills/sdlc/hotfix/analyze/gitnexus/step.md +17 -0
- package/skills/sdlc/hotfix/analyze/grill/SKILL.md +10 -0
- package/skills/sdlc/hotfix/analyze/grill/step.md +23 -0
- package/skills/sdlc/hotfix/analyze/reasoning/SKILL.md +10 -0
- package/skills/sdlc/hotfix/analyze/reasoning/step.md +29 -0
- package/skills/sdlc/hotfix/analyze/write/SKILL.md +10 -0
- package/skills/sdlc/hotfix/analyze/write/step.md +45 -0
- package/skills/sdlc/hotfix/implement/branch/SKILL.md +10 -0
- package/skills/sdlc/hotfix/implement/branch/step.md +15 -0
- package/skills/sdlc/hotfix/implement/entry/SKILL.md +10 -0
- package/skills/sdlc/hotfix/implement/entry/step.md +20 -0
- package/skills/sdlc/hotfix/implement/gate/SKILL.md +10 -0
- package/skills/sdlc/hotfix/implement/gate/step.md +104 -0
- package/skills/sdlc/hotfix/implement/impact/SKILL.md +10 -0
- package/skills/sdlc/hotfix/implement/impact/step.md +15 -0
- package/skills/sdlc/hotfix/implement/sonar/SKILL.md +10 -0
- package/skills/sdlc/hotfix/implement/sonar/step.md +27 -0
- package/skills/sdlc/hotfix/implement/tdd/SKILL.md +10 -0
- package/skills/sdlc/hotfix/implement/tdd/step.md +33 -0
- package/skills/sdlc/hotfix/implement/verify/SKILL.md +10 -0
- package/skills/sdlc/hotfix/implement/verify/step.md +27 -0
- package/skills/sdlc/hotfix/prd/entry/SKILL.md +10 -0
- package/skills/sdlc/hotfix/prd/entry/step.md +20 -0
- package/skills/sdlc/hotfix/prd/gate/SKILL.md +10 -0
- package/skills/sdlc/hotfix/prd/gate/step.md +32 -0
- package/skills/sdlc/hotfix/prd/requirements/SKILL.md +10 -0
- package/skills/sdlc/hotfix/prd/requirements/step.md +19 -0
- package/skills/sdlc/hotfix/prd/validate/SKILL.md +10 -0
- package/skills/sdlc/hotfix/prd/validate/step.md +19 -0
- package/skills/sdlc/hotfix/prd/write/SKILL.md +10 -0
- package/skills/sdlc/hotfix/prd/write/step.md +38 -0
- package/skills/sdlc/hotfix/review/entry/SKILL.md +10 -0
- package/skills/sdlc/hotfix/review/entry/step.md +13 -0
- package/skills/sdlc/hotfix/review/gate/SKILL.md +10 -0
- package/skills/sdlc/hotfix/review/gate/step.md +51 -0
- package/skills/sdlc/hotfix/review/impact/SKILL.md +10 -0
- package/skills/sdlc/hotfix/review/impact/step.md +22 -0
- package/skills/sdlc/hotfix/review/minimality/SKILL.md +10 -0
- package/skills/sdlc/hotfix/review/minimality/step.md +18 -0
- package/skills/sdlc/hotfix/review/test-quality/SKILL.md +10 -0
- package/skills/sdlc/hotfix/review/test-quality/step.md +16 -0
- package/skills/sdlc/hotfix/ship/commit-pr/SKILL.md +10 -0
- package/skills/sdlc/hotfix/ship/commit-pr/step.md +58 -0
- package/skills/sdlc/hotfix/ship/entry/SKILL.md +10 -0
- package/skills/sdlc/hotfix/ship/entry/step.md +20 -0
- package/skills/sdlc/hotfix/ship/exit/SKILL.md +10 -0
- package/skills/sdlc/hotfix/ship/exit/step.md +31 -0
- package/skills/sdlc/hotfix/ship/gitignore/SKILL.md +10 -0
- package/skills/sdlc/hotfix/ship/gitignore/step.md +22 -0
- package/skills/sdlc/hotfix/ship/report/SKILL.md +10 -0
- package/skills/sdlc/hotfix/ship/report/step.md +47 -0
- package/skills/sdlc/hotfix/ship/test-gate/SKILL.md +10 -0
- package/skills/sdlc/hotfix/ship/test-gate/step.md +17 -0
- package/skills/sdlc/implement/build-run/SKILL.md +10 -0
- package/skills/sdlc/implement/build-run/step.md +85 -0
- package/skills/sdlc/implement/checkpoint/SKILL.md +10 -0
- package/skills/sdlc/implement/checkpoint/step.md +20 -0
- package/skills/sdlc/implement/debug/SKILL.md +10 -0
- package/skills/sdlc/implement/debug/step.md +25 -0
- package/skills/sdlc/implement/impact/SKILL.md +10 -0
- package/skills/sdlc/implement/impact/step.md +12 -0
- package/skills/sdlc/implement/plan/SKILL.md +10 -0
- package/skills/sdlc/implement/plan/step.md +13 -0
- package/skills/sdlc/implement/prereq/SKILL.md +10 -0
- package/skills/sdlc/implement/prereq/step.md +21 -0
- package/skills/sdlc/implement/subagents/SKILL.md +10 -0
- package/skills/sdlc/implement/subagents/step.md +38 -0
- package/skills/sdlc/implement/tdd/SKILL.md +10 -0
- package/skills/sdlc/implement/tdd/step.md +24 -0
- package/skills/sdlc/init/SKILL.md +7 -0
- package/skills/sdlc/onboard-code/SKILL.md +7 -0
- package/skills/sdlc/onboard-docs/SKILL.md +7 -0
- package/skills/sdlc/pack.yaml +83 -16
- package/skills/sdlc/prd/blast-radius/SKILL.md +10 -0
- package/skills/sdlc/prd/blast-radius/step.md +76 -0
- package/skills/sdlc/prd/create/SKILL.md +10 -0
- package/skills/sdlc/prd/create/step.md +21 -0
- package/skills/sdlc/prd/elicitation/SKILL.md +10 -0
- package/skills/sdlc/prd/elicitation/step.md +12 -0
- package/skills/sdlc/prd/prereq/SKILL.md +10 -0
- package/skills/sdlc/prd/prereq/step.md +16 -0
- package/skills/sdlc/prd/validate/SKILL.md +10 -0
- package/skills/sdlc/prd/validate/step.md +24 -0
- package/skills/sdlc/review/code/SKILL.md +10 -0
- package/skills/sdlc/review/code/step.md +45 -0
- package/skills/sdlc/review/debate/SKILL.md +10 -0
- package/skills/sdlc/review/debate/step.md +84 -0
- package/skills/sdlc/review/impact/SKILL.md +10 -0
- package/skills/sdlc/review/impact/step.md +14 -0
- package/skills/sdlc/review/prereq/SKILL.md +10 -0
- package/skills/sdlc/review/prereq/step.md +18 -0
- package/skills/sdlc/review/verification/SKILL.md +10 -0
- package/skills/sdlc/review/verification/step.md +16 -0
- package/skills/sdlc/ship/commit/SKILL.md +10 -0
- package/skills/sdlc/ship/commit/step.md +23 -0
- package/skills/sdlc/ship/gitignore/SKILL.md +10 -0
- package/skills/sdlc/ship/gitignore/step.md +22 -0
- package/skills/sdlc/ship/pr/SKILL.md +10 -0
- package/skills/sdlc/ship/pr/step.md +34 -0
- package/skills/sdlc/ship/prereq/SKILL.md +10 -0
- package/skills/sdlc/ship/prereq/step.md +16 -0
- package/skills/sdlc/ship/report/SKILL.md +10 -0
- package/skills/sdlc/ship/report/step.md +74 -0
- package/skills/sdlc/srs/interface/SKILL.md +10 -0
- package/skills/sdlc/srs/interface/step.md +44 -0
- package/skills/sdlc/srs/prereq/SKILL.md +10 -0
- package/skills/sdlc/srs/prereq/step.md +19 -0
- package/skills/sdlc/srs/validate/SKILL.md +10 -0
- package/skills/sdlc/srs/validate/step.md +23 -0
- package/skills/sdlc/srs/write/SKILL.md +10 -0
- package/skills/sdlc/srs/write/step.md +19 -0
- package/skills/sdlc/test-design/boundary/SKILL.md +10 -0
- package/skills/sdlc/test-design/boundary/step.md +12 -0
- package/skills/sdlc/test-design/cases/SKILL.md +10 -0
- package/skills/sdlc/test-design/cases/step.md +22 -0
- package/skills/sdlc/test-design/coverage/SKILL.md +10 -0
- package/skills/sdlc/test-design/coverage/step.md +63 -0
- package/skills/sdlc/test-design/prereq/SKILL.md +10 -0
- package/skills/sdlc/test-design/prereq/step.md +15 -0
- package/{skills/sdlc/workflows → workflows/sdlc}/hotfix-tdd.yaml +2 -1
- package/{skills/sdlc/workflows → workflows/sdlc}/hotfix.yaml +8 -4
- package/workflows/sdlc/master-sdlc.yaml +64 -0
- package/workflows/sdlc/sdlc-architecture.yaml +43 -0
- package/workflows/sdlc/sdlc-build.yaml +51 -0
- package/workflows/sdlc/sdlc-design.yaml +61 -0
- package/workflows/sdlc/sdlc-discovery.yaml +43 -0
- package/workflows/sdlc/sdlc-feature-complete.yaml +36 -0
- package/workflows/sdlc/sdlc-hotfix-analyze.yaml +43 -0
- package/workflows/sdlc/sdlc-hotfix-implement.yaml +43 -0
- package/workflows/sdlc/sdlc-hotfix-prd.yaml +31 -0
- package/workflows/sdlc/sdlc-hotfix-review.yaml +31 -0
- package/workflows/sdlc/sdlc-hotfix-ship.yaml +37 -0
- package/workflows/sdlc/sdlc-implement.yaml +60 -0
- package/workflows/sdlc/sdlc-prd.yaml +36 -0
- package/workflows/sdlc/sdlc-qa.yaml +91 -0
- package/workflows/sdlc/sdlc-review.yaml +36 -0
- package/workflows/sdlc/sdlc-ship.yaml +36 -0
- package/workflows/sdlc/sdlc-srs.yaml +29 -0
- package/workflows/sdlc/sdlc-test-design.yaml +29 -0
- package/workflows/sdlc/sdlc-testcase.yaml +25 -0
- package/workflows/sdlc/sdlc-thinking.yaml +67 -0
- package/packages/web/dist/web/browser/chunk-IPMFXW6N.js +0 -1
- package/packages/web/dist/web/browser/chunk-IX2QWMX2.js +0 -1
- package/packages/web/dist/web/browser/chunk-QMAH5NZC.js +0 -1
- package/packages/web/dist/web/browser/chunk-RGFLNLPM.js +0 -1
- package/packages/web/dist/web/browser/chunk-RKWDHBN3.js +0 -5
- package/packages/web/dist/web/browser/chunk-XGYEZIV4.js +0 -1
- package/packages/web/dist/web/browser/main-IIUZVPMI.js +0 -1
- package/skills/sdlc/architecture/SKILL.md +0 -218
- package/skills/sdlc/discovery/SKILL.md +0 -197
- package/skills/sdlc/feature-complete/SKILL.md +0 -159
- package/skills/sdlc/hotfix-analyze/SKILL.md +0 -198
- package/skills/sdlc/hotfix-implement/SKILL.md +0 -272
- package/skills/sdlc/hotfix-prd/SKILL.md +0 -161
- package/skills/sdlc/hotfix-review/SKILL.md +0 -153
- package/skills/sdlc/hotfix-ship/SKILL.md +0 -221
- package/skills/sdlc/implement/SKILL.md +0 -264
- package/skills/sdlc/prd/SKILL.md +0 -182
- package/skills/sdlc/review/SKILL.md +0 -210
- package/skills/sdlc/ship/SKILL.md +0 -194
- package/skills/sdlc/srs/SKILL.md +0 -148
- package/skills/sdlc/test-design/SKILL.md +0 -132
- package/skills/sdlc/workflows/master-sdlc.yaml +0 -35
- package/skills/sdlc/workflows/sdlc-build.yaml +0 -18
- package/skills/sdlc/workflows/sdlc-design.yaml +0 -14
- package/skills/sdlc/workflows/sdlc-qa.yaml +0 -20
- package/skills/sdlc/workflows/sdlc-testcase.yaml +0 -8
- package/skills/sdlc/workflows/sdlc-thinking.yaml +0 -12
- /package/{skills/sdlc/workflows → workflows/sdlc}/onboarding.yaml +0 -0
package/skills/sdlc/pack.yaml
CHANGED
|
@@ -2,6 +2,7 @@ name: sdlc
|
|
|
2
2
|
version: 1.2.0
|
|
3
3
|
description: Distributed Agentic SDLC — multi-machine, multi-repo, graph-based knowledge
|
|
4
4
|
author: "@ngocsangairvds/vsaf"
|
|
5
|
+
workflows: ../../workflows/sdlc
|
|
5
6
|
|
|
6
7
|
skills:
|
|
7
8
|
# Setup
|
|
@@ -13,24 +14,91 @@ skills:
|
|
|
13
14
|
- onboard-code
|
|
14
15
|
|
|
15
16
|
# Phase 1-9 — Main flow
|
|
16
|
-
- discovery
|
|
17
|
-
- prd
|
|
18
|
-
- architecture
|
|
19
|
-
- srs
|
|
20
17
|
- write-srs
|
|
21
18
|
- validate-srs
|
|
22
|
-
- test-design
|
|
23
|
-
- implement
|
|
24
|
-
- review
|
|
25
|
-
- feature-complete
|
|
26
|
-
- ship
|
|
27
19
|
|
|
28
|
-
# Hotfix
|
|
29
|
-
- hotfix
|
|
30
|
-
- hotfix
|
|
31
|
-
- hotfix
|
|
32
|
-
- hotfix
|
|
33
|
-
- hotfix-
|
|
20
|
+
# Hotfix step skills — generated from hotfix phase SKILL.md files
|
|
21
|
+
- hotfix/analyze/entry
|
|
22
|
+
- hotfix/analyze/grill
|
|
23
|
+
- hotfix/analyze/gitnexus
|
|
24
|
+
- hotfix/analyze/reasoning
|
|
25
|
+
- hotfix/analyze/fix-strategy
|
|
26
|
+
- hotfix/analyze/write
|
|
27
|
+
- hotfix/analyze/exit
|
|
28
|
+
- hotfix/prd/entry
|
|
29
|
+
- hotfix/prd/requirements
|
|
30
|
+
- hotfix/prd/validate
|
|
31
|
+
- hotfix/prd/write
|
|
32
|
+
- hotfix/prd/gate
|
|
33
|
+
- hotfix/implement/entry
|
|
34
|
+
- hotfix/implement/branch
|
|
35
|
+
- hotfix/implement/tdd
|
|
36
|
+
- hotfix/implement/sonar
|
|
37
|
+
- hotfix/implement/verify
|
|
38
|
+
- hotfix/implement/impact
|
|
39
|
+
- hotfix/implement/gate
|
|
40
|
+
- hotfix/review/entry
|
|
41
|
+
- hotfix/review/minimality
|
|
42
|
+
- hotfix/review/test-quality
|
|
43
|
+
- hotfix/review/impact
|
|
44
|
+
- hotfix/review/gate
|
|
45
|
+
- hotfix/ship/entry
|
|
46
|
+
- hotfix/ship/gitignore
|
|
47
|
+
- hotfix/ship/test-gate
|
|
48
|
+
- hotfix/ship/commit-pr
|
|
49
|
+
- hotfix/ship/report
|
|
50
|
+
- hotfix/ship/exit
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
# Phase step skills — generated from phase SKILL.md files
|
|
54
|
+
- discovery/prereq
|
|
55
|
+
- discovery/system
|
|
56
|
+
- discovery/grill
|
|
57
|
+
- discovery/brainstorm
|
|
58
|
+
- discovery/domain
|
|
59
|
+
- discovery/prfaq
|
|
60
|
+
- prd/prereq
|
|
61
|
+
- prd/elicitation
|
|
62
|
+
- prd/create
|
|
63
|
+
- prd/validate
|
|
64
|
+
- prd/blast-radius
|
|
65
|
+
- architecture/prereq
|
|
66
|
+
- architecture/current-state
|
|
67
|
+
- architecture/grill
|
|
68
|
+
- architecture/decision
|
|
69
|
+
- architecture/epics
|
|
70
|
+
- architecture/readiness
|
|
71
|
+
- srs/prereq
|
|
72
|
+
- srs/write
|
|
73
|
+
- srs/validate
|
|
74
|
+
- srs/interface
|
|
75
|
+
- test-design/prereq
|
|
76
|
+
- test-design/cases
|
|
77
|
+
- test-design/boundary
|
|
78
|
+
- test-design/coverage
|
|
79
|
+
- implement/prereq
|
|
80
|
+
- implement/subagents
|
|
81
|
+
- implement/plan
|
|
82
|
+
- implement/checkpoint
|
|
83
|
+
- implement/tdd
|
|
84
|
+
- implement/debug
|
|
85
|
+
- implement/impact
|
|
86
|
+
- implement/build-run
|
|
87
|
+
- review/prereq
|
|
88
|
+
- review/verification
|
|
89
|
+
- review/code
|
|
90
|
+
- review/impact
|
|
91
|
+
- review/debate
|
|
92
|
+
- complete/prereq
|
|
93
|
+
- complete/context
|
|
94
|
+
- complete/knowledge
|
|
95
|
+
- complete/reindex
|
|
96
|
+
- complete/status
|
|
97
|
+
- ship/prereq
|
|
98
|
+
- ship/gitignore
|
|
99
|
+
- ship/commit
|
|
100
|
+
- ship/pr
|
|
101
|
+
- ship/report
|
|
34
102
|
|
|
35
103
|
# Diagnostics
|
|
36
104
|
- sdlc-health
|
|
@@ -62,4 +130,3 @@ bundled:
|
|
|
62
130
|
- zoom-out
|
|
63
131
|
- tdd
|
|
64
132
|
- improve-codebase-architecture
|
|
65
|
-
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
### Step 5: Blast Radius
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[PRD] [5/5] Assessing blast radius via GitNexus... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
Use GitNexus `impact` — assess scope of feature impact.
|
|
8
|
+
Write to `02-prd.md` §Blast Radius.
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
[PRD] [5/5] Assessing blast radius via GitNexus... ✅
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Gate
|
|
15
|
+
|
|
16
|
+
Human must approve the PRD. Write `## Gate: APPROVED` at the end of the file.
|
|
17
|
+
Do NOT proceed to Phase 3 without the Gate marker.
|
|
18
|
+
|
|
19
|
+
**Automated mode (opt-in):** when the environment has `VSAF_CI=1` or `VSAF_AUTO_APPROVE=1`, write the Gate yourself as `## Gate: APPROVED (auto · VSAF_CI · rationale: <one line>)` and proceed — the one-line rationale is REQUIRED for audit. Without the env flag, a human must approve (default).
|
|
20
|
+
|
|
21
|
+
## Output
|
|
22
|
+
|
|
23
|
+
Write file: `.vsaf/docs/features/{feature-name}/02-prd.md`
|
|
24
|
+
|
|
25
|
+
```markdown
|
|
26
|
+
# PRD: {feature-name}
|
|
27
|
+
|
|
28
|
+
## Grill Log
|
|
29
|
+
{elicitation Q&A}
|
|
30
|
+
|
|
31
|
+
## Requirements
|
|
32
|
+
### User Stories
|
|
33
|
+
{with acceptance criteria}
|
|
34
|
+
### Functional Requirements
|
|
35
|
+
{FR-001, FR-002...}
|
|
36
|
+
### Non-Functional Requirements
|
|
37
|
+
{NFR-001, NFR-002...}
|
|
38
|
+
|
|
39
|
+
## Validation
|
|
40
|
+
{validate-prd result}
|
|
41
|
+
|
|
42
|
+
## Adversarial
|
|
43
|
+
{adversarial findings}
|
|
44
|
+
|
|
45
|
+
## Blast Radius
|
|
46
|
+
{GitNexus impact result}
|
|
47
|
+
|
|
48
|
+
## Gate: {PENDING / APPROVED by {name} on {date}}
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Artifact Auto-Save
|
|
52
|
+
|
|
53
|
+
After writing the file, print the message:
|
|
54
|
+
|
|
55
|
+
> Artifacts saved. If the session is interrupted, open a new session and run the next phase — data is safe.
|
|
56
|
+
|
|
57
|
+
## Phase Exit Protocol
|
|
58
|
+
|
|
59
|
+
Print PHASE REPORT:
|
|
60
|
+
- Feature: {feature-name}
|
|
61
|
+
- Status: COMPLETED
|
|
62
|
+
- Completed: elicitation, create PRD, validate, adversarial review, blast radius
|
|
63
|
+
- Output files: `.vsaf/docs/features/{feature-name}/02-prd.md`
|
|
64
|
+
- Suggested next steps:
|
|
65
|
+
[1] Phase 3 Architecture → `/sdlc-architecture`
|
|
66
|
+
[2] Save artifacts
|
|
67
|
+
|
|
68
|
+
Update `.vsaf/docs/STATUS.md`.
|
|
69
|
+
|
|
70
|
+
## Rules
|
|
71
|
+
|
|
72
|
+
- ⛔ Do NOT skip elicitation — Shared Understanding is mandatory
|
|
73
|
+
- ⛔ Do NOT modify `graphify-out/` or `.gitnexus/`
|
|
74
|
+
- Every user story MUST have acceptance criteria
|
|
75
|
+
- Every FR/NFR MUST have a unique ID
|
|
76
|
+
- Do NOT proceed if blast radius = HIGH without human approval
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
### Step 3: Create PRD
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[PRD] [3/5] Creating PRD from grill results... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
Use `/bmad-create-prd` — create structured PRD from grill results (Step 2).
|
|
8
|
+
|
|
9
|
+
Ensure the output covers:
|
|
10
|
+
|
|
11
|
+
1. **Goals** — business goals + success metrics
|
|
12
|
+
2. **User Stories** — each MUST have acceptance criteria (Given/When/Then)
|
|
13
|
+
3. **Functional Requirements** — unique ID per requirement (FR-001, FR-002...)
|
|
14
|
+
4. **Non-Functional Requirements** — unique ID (NFR-001, NFR-002...) — performance, security, scalability
|
|
15
|
+
5. **Success Metrics** — measurable KPIs tied to goals
|
|
16
|
+
|
|
17
|
+
Write to `02-prd.md` §Requirements.
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
[PRD] [3/5] Creating PRD from grill results... ✅
|
|
21
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
### Step 2: Elicitation (Grill Session)
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[PRD] [2/5] Grill session — elicitation probing edge cases... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
Use `/bmad-advanced-elicitation` — grill 40-100 questions probing edge cases.
|
|
8
|
+
Record results in `02-prd.md` §Grill Log.
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
[PRD] [2/5] Grill session — elicitation probing edge cases... ✅
|
|
12
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
## Phase Entry Protocol
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[PRD] [1/5] Checking prerequisites... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
1. Input: `.vsaf/docs/features/{feature-name}/01-discovery.md`
|
|
8
|
+
2. Check if file exists:
|
|
9
|
+
- Does not exist → Ask: "File not found. Have you run Phase 1 Discovery?"
|
|
10
|
+
3. Read `.vsaf/docs/STATUS.md`
|
|
11
|
+
4. Read `CONTEXT.md`
|
|
12
|
+
5. Query `graph.json` for business domain context
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
[PRD] [1/5] Checking prerequisites... ✅
|
|
16
|
+
```
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
### Step 4: Validate + Adversarial Review
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[PRD] [4/5] Validate + adversarial review... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
**4a — Validate PRD:**
|
|
8
|
+
|
|
9
|
+
Use `/bmad-validate-prd` — validate the PRD against BMAD standards:
|
|
10
|
+
- Completeness — all user stories covered by FRs? All FRs traceable to a user story?
|
|
11
|
+
- Clarity — any ambiguous requirements? Can each FR be implemented without guessing?
|
|
12
|
+
- Testability — can each FR be verified with a test case?
|
|
13
|
+
- Consistency — any FRs that contradict each other?
|
|
14
|
+
|
|
15
|
+
Write to `02-prd.md` §Validation. If FAIL → fix inline, re-validate.
|
|
16
|
+
|
|
17
|
+
**4b — Adversarial review:**
|
|
18
|
+
|
|
19
|
+
Use `/bmad-review-adversarial-general` — cynical review to find gaps.
|
|
20
|
+
Write to `02-prd.md` §Adversarial.
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
[PRD] [4/5] Validate + adversarial review... ✅
|
|
24
|
+
```
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
### Step 3: Code Review
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[REVIEW] [3/5] Adversarial code review... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
Use `/bmad-code-review` — adversarial code review on the feature branch diff with parallel review layers (Blind Hunter, Edge Case Hunter, Acceptance Auditor).
|
|
8
|
+
|
|
9
|
+
Ensure the review covers:
|
|
10
|
+
|
|
11
|
+
1. **Security scan** — SQL injection, XSS, command injection, hardcoded secrets, insecure deserialization
|
|
12
|
+
2. **Data integrity** — null dereference, resource leaks, race conditions, missing transactions
|
|
13
|
+
3. **SOLID violations** — god classes, leaky abstractions, interface segregation
|
|
14
|
+
4. **Naming consistency** — verify against CONTEXT.md terminology
|
|
15
|
+
5. **SRS compliance** — every FR/NFR implemented? Any extra scope not in SRS?
|
|
16
|
+
|
|
17
|
+
Classify each finding: MUST FIX / SHOULD FIX / NOTED.
|
|
18
|
+
Write to `08-review.md` §Code Review.
|
|
19
|
+
|
|
20
|
+
#### Quality Gate Re-check (SonarQube)
|
|
21
|
+
|
|
22
|
+
**IMPORTANT:** SonarQube rules were already applied in Phase 6 (Implementation). The Review phase only RE-CHECKS — confirming that code still meets standards after all changes.
|
|
23
|
+
|
|
24
|
+
Verify that code meets the `sonar-viettel` Quality Gate.
|
|
25
|
+
|
|
26
|
+
> **Standard (single source of truth):** **`.claude/skills/_shared/sdlc/sonar-viettel/quality-gate.md`** — the full New Code + Overall Code tables, the 357-rule parameters, and the importable `sonar-viettel-profile.xml` / `sonar-viettel-gate.json`. This is the **same** file Phase 6 (`/sdlc-implement`) coded against — review only confirms compliance, do not change the numbers.
|
|
27
|
+
|
|
28
|
+
**Hard fails to confirm (summary — see the shared doc for the full gate):**
|
|
29
|
+
- New Code: Issues / Blocker / Critical / Major / Vulnerabilities = **0**; Code Smells **≤ 20**; Security Hotspots Reviewed = **100%**; Duplicated **≤ 45%**; Maintainability / Reliability / Security Rating **≥ A**.
|
|
30
|
+
- Overall Code: Bugs = **0**; Code Smells **≤ 50**; same Blocker/Critical/Major/Vuln/Duplication/rating rules.
|
|
31
|
+
|
|
32
|
+
**How to execute (auto-detect — check whether `sonar-scanner` is on PATH):**
|
|
33
|
+
- SonarQube present → ensure it uses the `sonar-viettel` Profile + Gate (import from the shared folder if missing), run `sonar-scanner`, and check the report
|
|
34
|
+
- SonarQube absent → print `Sonar not found → self-checklist mode` and perform a manual re-check against the shared `quality-gate.md` (a fully supported path — SonarQube is OPTIONAL):
|
|
35
|
+
- Scan for security vulnerabilities (SQL injection, XSS, command injection, hardcoded secrets)
|
|
36
|
+
- Scan for bugs (null dereference, resource leaks, concurrency issues)
|
|
37
|
+
- Scan for code smells (long methods, deep nesting, duplicated blocks)
|
|
38
|
+
- Verify naming conventions, SOLID principles, duplicated blocks
|
|
39
|
+
- Write results to `08-review.md` §Quality Gate
|
|
40
|
+
|
|
41
|
+
**Quality Gate FAIL** → classify each issue as MUST FIX / SHOULD FIX / NOTED per the triage rules below.
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
[REVIEW] [3/5] Adversarial code review + Quality Gate re-check... ✅
|
|
45
|
+
```
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
### Step 5: Debate (complex features only)
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[REVIEW] [5/5] Multi-agent debate (if needed)... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
Use `/bmad-party-mode` — multi-agent debate:
|
|
8
|
+
- Security vs Performance vs Maintainability
|
|
9
|
+
Write to `08-review.md` §Debate.
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
[REVIEW] [5/5] Multi-agent debate... ✅
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Gate
|
|
16
|
+
|
|
17
|
+
MUST FIX = 0, Human approve.
|
|
18
|
+
|
|
19
|
+
**Automated mode (opt-in):** when `VSAF_CI=1` or `VSAF_AUTO_APPROVE=1` is set AND MUST FIX = 0, write `## Gate: APPROVED (auto · VSAF_CI · rationale: <one line>)` and proceed. If MUST FIX > 0, NEVER auto-approve — return to Phase 6 (Implement) regardless of the flag. Without the env flag, a human must approve (default).
|
|
20
|
+
|
|
21
|
+
Triage:
|
|
22
|
+
- **MUST FIX**: Security, data loss, SRS FR/NFR not satisfied, crash → Blocks ship
|
|
23
|
+
- **SHOULD FIX**: Performance, maintainability → Fix if time allows
|
|
24
|
+
- **NOTED**: Style, minor naming → Log only
|
|
25
|
+
|
|
26
|
+
If MUST FIX > 0 → return to Phase 6 (Implementation) with specific issues.
|
|
27
|
+
|
|
28
|
+
## Output
|
|
29
|
+
|
|
30
|
+
Write file: `.vsaf/docs/features/{feature-name}/08-review.md`
|
|
31
|
+
|
|
32
|
+
```markdown
|
|
33
|
+
# Review: {feature-name}
|
|
34
|
+
|
|
35
|
+
## Verification
|
|
36
|
+
- Build: PASS/FAIL
|
|
37
|
+
- Tests: {X}/{Y} passed
|
|
38
|
+
- Uncommitted files: none
|
|
39
|
+
- Scope: matches SRS ✓
|
|
40
|
+
|
|
41
|
+
## Code Review
|
|
42
|
+
### MUST FIX
|
|
43
|
+
- (none)
|
|
44
|
+
### SHOULD FIX
|
|
45
|
+
- {issue description}
|
|
46
|
+
### NOTED
|
|
47
|
+
- {minor items}
|
|
48
|
+
|
|
49
|
+
## Quality Gate (Re-check)
|
|
50
|
+
- SonarQube: {available / manual re-check}
|
|
51
|
+
- New Code: {PASS/FAIL} — Issues={N}, Blocker={N}, Critical={N}, Major={N}, Smells={N}, Vulns={N}, Duplication={N}%
|
|
52
|
+
- Overall: {PASS/FAIL} — Bugs={N}, Blocker={N}, Critical={N}, Major={N}, Smells={N}, Vulns={N}, Duplication={N}%
|
|
53
|
+
- Compile: PASS/FAIL
|
|
54
|
+
- Runtime: PASS/FAIL
|
|
55
|
+
|
|
56
|
+
## Impact
|
|
57
|
+
- Files changed: {N}
|
|
58
|
+
- Blast radius: {low/medium/high}
|
|
59
|
+
- Confidence: {%}
|
|
60
|
+
|
|
61
|
+
## Debate (if applicable)
|
|
62
|
+
{party-mode findings}
|
|
63
|
+
|
|
64
|
+
## Gate: {PENDING / APPROVED by {name} on {date}}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Phase Exit Protocol
|
|
68
|
+
|
|
69
|
+
Print PHASE REPORT:
|
|
70
|
+
- Results: MUST FIX = {N}, SHOULD FIX = {N}, NOTED = {N}
|
|
71
|
+
- Output files: `08-review.md`
|
|
72
|
+
- Suggestion: [1] `/sdlc-feature-complete` (if APPROVED) [2] Return to Phase 6 (if MUST FIX > 0)
|
|
73
|
+
|
|
74
|
+
Update `.vsaf/docs/STATUS.md`.
|
|
75
|
+
|
|
76
|
+
## Rules
|
|
77
|
+
|
|
78
|
+
- Review against SRS (spec), NOT against code implementation
|
|
79
|
+
- Max 2 review rounds — if still failing → escalate to human
|
|
80
|
+
- MUST FIX items MUST be resolved before feature-complete
|
|
81
|
+
- **Quality Gate FAIL = MUST FIX** — Blocker, Critical, Vulnerability all block ship
|
|
82
|
+
- **Code does not compile = MUST FIX** — hard gate, no exceptions
|
|
83
|
+
- If there is no SonarQube, Claude performs a manual quality gate re-check
|
|
84
|
+
- **SonarQube only RE-CHECKS** — rules were applied in Phase 6, review only confirms compliance
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
### Step 4: Impact Assessment
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[REVIEW] [4/5] Impact assessment via GitNexus... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
Use GitNexus `detect_changes` + `impact`:
|
|
8
|
+
- Confirm only expected files changed
|
|
9
|
+
- Blast radius confidence scoring
|
|
10
|
+
Write to `08-review.md` §Impact.
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
[REVIEW] [4/5] Impact assessment... ✅
|
|
14
|
+
```
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
## Phase Entry Protocol
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[REVIEW] [1/5] Checking prerequisites... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
1. Input:
|
|
8
|
+
- `.vsaf/docs/features/{feature-name}/05-srs.md`
|
|
9
|
+
- Code diff on feature branch
|
|
10
|
+
2. Check that SRS file exists
|
|
11
|
+
3. Check that feature branch exists
|
|
12
|
+
4. Read `.vsaf/docs/STATUS.md`
|
|
13
|
+
5. Read `CONTEXT.md`
|
|
14
|
+
6. Query `graph.json` for impact verification
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
[REVIEW] [1/5] Checking prerequisites... ✅
|
|
18
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
### Step 2: System Verification
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[REVIEW] [2/5] System verification — build, tests, scope... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
Use `/superpowers:verification-before-completion`:
|
|
8
|
+
- Build passes
|
|
9
|
+
- All tests GREEN
|
|
10
|
+
- No uncommitted files
|
|
11
|
+
- Scope matches SRS
|
|
12
|
+
Write to `08-review.md` §Verification.
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
[REVIEW] [2/5] System verification... ✅
|
|
16
|
+
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
### Step 3: Merge Strategy + Commit
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[SHIP] [3/5] Commit source code + .vsaf/docs/... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
Use `/superpowers:finishing-a-development-branch`:
|
|
8
|
+
- Decide merge strategy (merge commit / squash / rebase)
|
|
9
|
+
- Resolve conflicts if any
|
|
10
|
+
- Verify final build passes
|
|
11
|
+
|
|
12
|
+
**Commit scope — ONLY commit:**
|
|
13
|
+
- Source code changes (implementation / fix)
|
|
14
|
+
- `.vsaf/docs/` folder (artifacts, CONTEXT.md, KNOWLEDGE.md, STATUS.md)
|
|
15
|
+
- `.gitignore` (if updated)
|
|
16
|
+
|
|
17
|
+
**DO NOT commit:**
|
|
18
|
+
- `graphify-out/` — local graph index
|
|
19
|
+
- `.gitnexus/` — local code index
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
[SHIP] [3/5] Commit source code + .vsaf/docs/... ✅
|
|
23
|
+
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
### Step 2: .gitignore Enforcement
|
|
2
|
+
|
|
3
|
+
```
|
|
4
|
+
[SHIP] [2/5] Checking .gitignore — ensuring index files are not committed... ⏳
|
|
5
|
+
```
|
|
6
|
+
|
|
7
|
+
**MANDATORY** — MUST verify before committing:
|
|
8
|
+
|
|
9
|
+
1. Check that `.gitignore` contains:
|
|
10
|
+
```
|
|
11
|
+
graphify-out/
|
|
12
|
+
.gitnexus/
|
|
13
|
+
```
|
|
14
|
+
2. If MISSING → **AUTOMATICALLY add to `.gitignore`** and notify user
|
|
15
|
+
3. Verify with `git status` — `graphify-out/` and `.gitnexus/` DO NOT appear in staged/unstaged files
|
|
16
|
+
4. If they still appear → `git rm --cached -r graphify-out/ .gitnexus/` before committing
|
|
17
|
+
|
|
18
|
+
⚠️ **ABSOLUTELY DO NOT commit `graphify-out/` or `.gitnexus/`** — these are local indexes, each machine builds its own.
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
[SHIP] [2/5] Checking .gitignore... ✅
|
|
22
|
+
```
|