bmad-module-skill-forge 0.6.0 → 0.7.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/README.md +2 -2
- package/docs/agents.md +9 -5
- package/docs/concepts.md +17 -13
- package/docs/examples.md +19 -4
- package/docs/getting-started.md +34 -19
- package/docs/how-it-works.md +87 -84
- package/docs/index.md +1 -1
- package/docs/workflows.md +88 -40
- package/package.json +1 -1
- package/src/agents/forger.agent.yaml +17 -5
- package/src/forger/README.md +1 -1
- package/src/forger/forge-tier.yaml +2 -1
- package/src/forger/preferences.yaml +5 -7
- package/src/knowledge/agentskills-spec.md +1 -1
- package/src/knowledge/architecture-verification.md +102 -0
- package/src/knowledge/ccc-bridge.md +3 -2
- package/src/knowledge/confidence-tiers.md +12 -1
- package/src/knowledge/doc-fetcher.md +1 -1
- package/src/knowledge/manual-section-integrity.md +2 -2
- package/src/knowledge/overview.md +11 -7
- package/src/knowledge/progressive-capability.md +5 -2
- package/src/knowledge/qmd-registry.md +5 -2
- package/src/knowledge/skf-knowledge-index.csv +2 -0
- package/src/knowledge/skill-lifecycle.md +26 -2
- package/src/knowledge/split-body-strategy.md +16 -2
- package/src/knowledge/tool-resolution.md +55 -0
- package/src/knowledge/zero-hallucination.md +11 -8
- package/src/module-help.csv +9 -6
- package/src/module.yaml +3 -0
- package/src/workflows/README.md +35 -17
- package/src/workflows/analyze-source/data/skill-brief-schema.md +18 -5
- package/src/workflows/analyze-source/steps-c/step-01-init.md +2 -2
- package/src/workflows/analyze-source/steps-c/step-01b-continue.md +1 -1
- package/src/workflows/analyze-source/steps-c/step-02-scan-project.md +1 -1
- package/src/workflows/analyze-source/steps-c/step-03-identify-units.md +1 -1
- package/src/workflows/analyze-source/steps-c/step-04-map-and-detect.md +3 -3
- package/src/workflows/analyze-source/steps-c/step-05-recommend.md +1 -1
- package/src/workflows/analyze-source/steps-c/step-06-generate-briefs.md +2 -2
- package/src/workflows/analyze-source/workflow.md +2 -2
- package/src/workflows/audit-skill/data/severity-rules.md +1 -1
- package/src/workflows/audit-skill/steps-c/step-01-init.md +2 -1
- package/src/workflows/audit-skill/steps-c/step-02-re-index.md +8 -1
- package/src/workflows/audit-skill/steps-c/step-03-structural-diff.md +2 -2
- package/src/workflows/audit-skill/steps-c/step-04-semantic-diff.md +2 -2
- package/src/workflows/audit-skill/steps-c/step-05-severity-classify.md +1 -1
- package/src/workflows/audit-skill/workflow.md +2 -1
- package/src/workflows/brief-skill/data/scope-templates.md +10 -0
- package/src/workflows/brief-skill/data/skill-brief-schema.md +25 -23
- package/src/workflows/brief-skill/steps-c/step-01-gather-intent.md +1 -1
- package/src/workflows/brief-skill/steps-c/step-02-analyze-target.md +1 -1
- package/src/workflows/brief-skill/steps-c/step-05-write-brief.md +3 -0
- package/src/workflows/create-skill/data/extraction-patterns.md +7 -1
- package/src/workflows/create-skill/data/skill-sections.md +12 -11
- package/src/workflows/create-skill/data/source-resolution-protocols.md +2 -2
- package/src/workflows/create-skill/data/tier-degradation-rules.md +1 -1
- package/src/workflows/create-skill/steps-c/step-01-load-brief.md +14 -10
- package/src/workflows/create-skill/steps-c/step-02b-ccc-discover.md +4 -0
- package/src/workflows/create-skill/steps-c/step-03-extract.md +19 -19
- package/src/workflows/create-skill/steps-c/step-03b-fetch-temporal.md +3 -3
- package/src/workflows/create-skill/steps-c/step-03c-fetch-docs.md +3 -1
- package/src/workflows/create-skill/steps-c/step-04-enrich.md +3 -1
- package/src/workflows/create-skill/steps-c/step-05-compile.md +4 -3
- package/src/workflows/create-skill/steps-c/step-06-validate.md +2 -2
- package/src/workflows/create-skill/steps-c/step-07-generate-artifacts.md +33 -44
- package/src/workflows/create-skill/steps-c/step-08-report.md +25 -11
- package/src/workflows/create-skill/workflow.md +2 -2
- package/src/workflows/create-stack-skill/data/compose-mode-rules.md +65 -0
- package/src/workflows/create-stack-skill/data/manifest-patterns.md +23 -1
- package/src/workflows/create-stack-skill/data/stack-skill-template.md +28 -6
- package/src/workflows/create-stack-skill/steps-c/step-01-init.md +25 -7
- package/src/workflows/create-stack-skill/steps-c/step-02-detect-manifests.md +37 -3
- package/src/workflows/create-stack-skill/steps-c/step-03-rank-and-confirm.md +29 -3
- package/src/workflows/create-stack-skill/steps-c/step-04-parallel-extract.md +50 -7
- package/src/workflows/create-stack-skill/steps-c/step-05-detect-integrations.md +35 -3
- package/src/workflows/create-stack-skill/steps-c/step-06-compile-stack.md +5 -1
- package/src/workflows/create-stack-skill/steps-c/step-07-generate-output.md +53 -5
- package/src/workflows/create-stack-skill/steps-c/step-08-validate.md +3 -3
- package/src/workflows/create-stack-skill/steps-c/step-09-report.md +8 -2
- package/src/workflows/create-stack-skill/workflow.md +2 -2
- package/src/workflows/export-skill/data/managed-section-format.md +8 -1
- package/src/workflows/export-skill/data/snippet-format.md +1 -1
- package/src/workflows/export-skill/steps-c/step-04-update-context.md +7 -2
- package/src/workflows/export-skill/steps-c/step-05-token-report.md +1 -1
- package/src/workflows/export-skill/workflow.md +3 -1
- package/src/workflows/quick-skill/data/skill-template.md +18 -6
- package/src/workflows/quick-skill/steps-c/step-04-compile.md +26 -6
- package/src/workflows/quick-skill/steps-c/step-05-validate.md +1 -1
- package/src/workflows/quick-skill/steps-c/step-06-write.md +3 -0
- package/src/workflows/quick-skill/workflow.md +1 -1
- package/src/workflows/refine-architecture/data/refinement-rules.md +102 -0
- package/src/workflows/refine-architecture/steps-c/step-01-init.md +188 -0
- package/src/workflows/refine-architecture/steps-c/step-02-gap-analysis.md +179 -0
- package/src/workflows/refine-architecture/steps-c/step-03-issue-detection.md +182 -0
- package/src/workflows/refine-architecture/steps-c/step-04-improvements.md +169 -0
- package/src/workflows/refine-architecture/steps-c/step-05-compile.md +200 -0
- package/src/workflows/refine-architecture/steps-c/step-06-report.md +147 -0
- package/src/workflows/refine-architecture/workflow.md +61 -0
- package/src/workflows/setup-forge/steps-c/step-01-detect-and-tier.md +2 -1
- package/src/workflows/setup-forge/steps-c/step-01b-ccc-index.md +5 -3
- package/src/workflows/setup-forge/steps-c/step-02-write-config.md +15 -16
- package/src/workflows/setup-forge/steps-c/step-03-auto-index.md +1 -1
- package/src/workflows/setup-forge/steps-c/step-04-report.md +2 -2
- package/src/workflows/setup-forge/workflow.md +3 -2
- package/src/workflows/test-skill/data/scoring-rules.md +3 -0
- package/src/workflows/test-skill/data/source-access-protocol.md +1 -1
- package/src/workflows/test-skill/steps-c/step-01-init.md +1 -0
- package/src/workflows/test-skill/steps-c/step-02-detect-mode.md +2 -0
- package/src/workflows/test-skill/workflow.md +2 -2
- package/src/workflows/update-skill/steps-c/step-02-detect-changes.md +3 -3
- package/src/workflows/update-skill/steps-c/step-03-re-extract.md +8 -3
- package/src/workflows/update-skill/steps-c/step-05-validate.md +8 -12
- package/src/workflows/update-skill/steps-c/step-06-write.md +5 -2
- package/src/workflows/update-skill/workflow.md +1 -1
- package/src/workflows/verify-stack/data/coverage-patterns.md +45 -0
- package/src/workflows/verify-stack/data/feasibility-report-template.md +63 -0
- package/src/workflows/verify-stack/data/integration-verification-rules.md +73 -0
- package/src/workflows/verify-stack/steps-c/step-01-init.md +174 -0
- package/src/workflows/verify-stack/steps-c/step-02-coverage.md +181 -0
- package/src/workflows/verify-stack/steps-c/step-03-integrations.md +195 -0
- package/src/workflows/verify-stack/steps-c/step-04-requirements.md +168 -0
- package/src/workflows/verify-stack/steps-c/step-05-synthesize.md +191 -0
- package/src/workflows/verify-stack/steps-c/step-06-report.md +197 -0
- package/src/workflows/verify-stack/workflow.md +61 -0
- package/src/workflows/analyze-source/validation-report.md +0 -657
- package/src/workflows/analyze-source/workflow-plan-analyze-source.md +0 -385
- package/src/workflows/audit-skill/validation-report.md +0 -545
- package/src/workflows/audit-skill/workflow-plan-audit-skill.md +0 -318
- package/src/workflows/brief-skill/validation-report.md +0 -630
- package/src/workflows/brief-skill/workflow-plan-brief-skill.md +0 -360
- package/src/workflows/create-skill/validation-report.md +0 -189
- package/src/workflows/create-skill/workflow-plan-create-skill.md +0 -525
- package/src/workflows/create-stack-skill/validation-report.md +0 -401
- package/src/workflows/create-stack-skill/workflow-plan-create-stack-skill.md +0 -481
- package/src/workflows/export-skill/validation-report.md +0 -263
- package/src/workflows/export-skill/workflow-plan-export-skill.md +0 -369
- package/src/workflows/quick-skill/validation-report.md +0 -543
- package/src/workflows/quick-skill/workflow-plan-quick-skill.md +0 -405
- package/src/workflows/setup-forge/validation-report.md +0 -504
- package/src/workflows/setup-forge/workflow-plan-setup-forge.md +0 -430
- package/src/workflows/test-skill/validation-report.md +0 -390
- package/src/workflows/test-skill/workflow-plan-test-skill.md +0 -292
- package/src/workflows/update-skill/data/tier-degradation-rules.md +0 -46
- package/src/workflows/update-skill/validation-report.md +0 -559
- package/src/workflows/update-skill/workflow-plan-update-skill.md +0 -441
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-04-requirements'
|
|
3
|
+
description: 'Pass 3 (OPTIONAL) — if PRD/vision document provided, verify the stack covers stated requirements'
|
|
4
|
+
|
|
5
|
+
nextStepFile: './step-05-synthesize.md'
|
|
6
|
+
outputFile: '{forge_data_folder}/feasibility-report-{project_name}.md'
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Step 4: Requirements Coverage
|
|
10
|
+
|
|
11
|
+
## STEP GOAL:
|
|
12
|
+
|
|
13
|
+
If a PRD or vision document was provided in Step 01, verify that the combined capabilities of the generated skills address each stated requirement. If no PRD was provided, skip this pass and auto-proceed. Produce a requirements coverage table with Fulfilled, Partially Fulfilled, or Not Addressed verdicts.
|
|
14
|
+
|
|
15
|
+
## MANDATORY EXECUTION RULES (READ FIRST):
|
|
16
|
+
|
|
17
|
+
### Universal Rules:
|
|
18
|
+
|
|
19
|
+
- 📖 CRITICAL: Read the complete step file before taking any action
|
|
20
|
+
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
|
|
21
|
+
- ⚙️ TOOL/SUBPROCESS FALLBACK: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
|
|
22
|
+
- ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
23
|
+
|
|
24
|
+
### Role Reinforcement:
|
|
25
|
+
|
|
26
|
+
- ✅ You are a stack verification analyst assessing requirements coverage
|
|
27
|
+
- ✅ Every verdict must reason from actual skill capabilities, not assumptions
|
|
28
|
+
- ✅ "Not Addressed" is a valid and important finding — do not force-fit skills to requirements
|
|
29
|
+
|
|
30
|
+
### Step-Specific Rules:
|
|
31
|
+
|
|
32
|
+
- 🎯 Focus ONLY on requirements-to-skills coverage assessment
|
|
33
|
+
- 🚫 FORBIDDEN to re-analyze integrations — that was Step 03
|
|
34
|
+
- 🚫 FORBIDDEN to synthesize or produce overall verdicts — that is Step 05
|
|
35
|
+
- 💬 If no PRD was provided, skip immediately with a clear message
|
|
36
|
+
|
|
37
|
+
## EXECUTION PROTOCOLS:
|
|
38
|
+
|
|
39
|
+
- 🎯 Extract requirements from PRD/vision document and assess skill coverage
|
|
40
|
+
- 💾 Append Requirements Coverage section to {outputFile}
|
|
41
|
+
- 📖 Auto-proceed to next step after completion or skip
|
|
42
|
+
- 🚫 Only requirements coverage — no synthesis, no overall verdict
|
|
43
|
+
|
|
44
|
+
## CONTEXT BOUNDARIES:
|
|
45
|
+
|
|
46
|
+
- Available: PRD/vision document (if provided), skill SKILL.md files, metadata.json files
|
|
47
|
+
- Focus: Mapping requirements to skill capabilities
|
|
48
|
+
- Limits: Do not evaluate skill quality — only whether capabilities match requirements
|
|
49
|
+
- Dependencies: Step 01 (PRD availability flag, skill inventory)
|
|
50
|
+
|
|
51
|
+
## MANDATORY SEQUENCE
|
|
52
|
+
|
|
53
|
+
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
|
|
54
|
+
|
|
55
|
+
### 1. Check PRD Availability
|
|
56
|
+
|
|
57
|
+
**Check `prd_available` from workflow state (set in Step 01). If `prd_available` is false (no PRD/vision document was provided):**
|
|
58
|
+
|
|
59
|
+
"**Pass 3: Requirements Coverage — Skipped**
|
|
60
|
+
|
|
61
|
+
No PRD or vision document was provided. Requirements coverage analysis requires a document describing project capabilities and constraints.
|
|
62
|
+
|
|
63
|
+
To include this pass, re-run **[VS]** with a PRD or vision document path.
|
|
64
|
+
|
|
65
|
+
**Proceeding to synthesis...**"
|
|
66
|
+
|
|
67
|
+
Update {outputFile} frontmatter: append `'step-04-requirements'` to `stepsCompleted`, set `requirements_pass: "skipped"`.
|
|
68
|
+
|
|
69
|
+
Load, read the full file and then execute `{nextStepFile}`. **STOP HERE — do not execute sections 2-6.**
|
|
70
|
+
|
|
71
|
+
**If PRD/vision document was provided:** Continue to section 2.
|
|
72
|
+
|
|
73
|
+
### 2. Extract Requirements
|
|
74
|
+
|
|
75
|
+
Parse the PRD/vision document for capability requirements.
|
|
76
|
+
|
|
77
|
+
**Look for:**
|
|
78
|
+
- **Feature descriptions** — explicit capabilities the product must have
|
|
79
|
+
- **Technical requirements** — performance targets, scalability needs, platform support
|
|
80
|
+
- **Non-functional requirements** — offline-first, real-time sync, multi-language support, accessibility, security constraints
|
|
81
|
+
- **Integration requirements** — third-party service dependencies, API contracts
|
|
82
|
+
- **Infrastructure requirements** — deployment targets, CI/CD needs, monitoring
|
|
83
|
+
|
|
84
|
+
**Build a requirements list** with each entry containing:
|
|
85
|
+
- `requirement_id` — sequential identifier (R1, R2, R3...)
|
|
86
|
+
- `requirement_text` — the stated requirement
|
|
87
|
+
- `category` — feature, technical, non-functional, integration, or infrastructure
|
|
88
|
+
- `source_section` — the PRD section where it was found
|
|
89
|
+
|
|
90
|
+
### 3. Assess Stack Coverage
|
|
91
|
+
|
|
92
|
+
For each requirement, evaluate whether the combined capabilities of the generated skills address it.
|
|
93
|
+
|
|
94
|
+
**Assessment method:**
|
|
95
|
+
- Read each skill's SKILL.md exports, description, and capabilities sections
|
|
96
|
+
- Check if skill exports provide functions, types, or patterns relevant to the requirement
|
|
97
|
+
- Consider combinations of multiple skills that together address a requirement
|
|
98
|
+
- For non-functional requirements, check if skills document relevant configuration or patterns
|
|
99
|
+
|
|
100
|
+
**Assign verdict per requirement:**
|
|
101
|
+
- **Fulfilled** — one or more skills clearly provide the needed capability, with specific exports or patterns identified
|
|
102
|
+
- **Partially Fulfilled** — skills provide related capability but gaps remain (specify what is covered and what is not)
|
|
103
|
+
- **Not Addressed** — no skill in the stack provides capability relevant to this requirement
|
|
104
|
+
|
|
105
|
+
**Each verdict MUST include:**
|
|
106
|
+
- Which skills contribute (if any)
|
|
107
|
+
- Specific exports or capabilities from those skills that are relevant
|
|
108
|
+
- For Partially Fulfilled: what gap remains
|
|
109
|
+
|
|
110
|
+
### 4. Display Requirements Results
|
|
111
|
+
|
|
112
|
+
"**Pass 3: Requirements Coverage**
|
|
113
|
+
|
|
114
|
+
| ID | Requirement | Category | Verdict | Contributing Skills |
|
|
115
|
+
|----|-------------|----------|---------|-------------------|
|
|
116
|
+
| {id} | {requirement_text} | {category} | {Fulfilled/Partially Fulfilled/Not Addressed} | {skill_names or '—'} |
|
|
117
|
+
|
|
118
|
+
**Coverage: {fulfilled_count} Fulfilled, {partial_count} Partially Fulfilled, {not_addressed_count} Not Addressed**
|
|
119
|
+
|
|
120
|
+
{IF any Not Addressed:}
|
|
121
|
+
**Unaddressed Requirements — Recommendations:**
|
|
122
|
+
{For each not addressed requirement:}
|
|
123
|
+
- **{id}:** {requirement_text} → Evaluate `{category}` libraries that provide this capability, generate a skill with **[CS]** or **[QS]**, then re-run **[VS]**
|
|
124
|
+
|
|
125
|
+
{IF any Partially Fulfilled:}
|
|
126
|
+
**Partial Coverage — Details:**
|
|
127
|
+
{For each partially fulfilled requirement:}
|
|
128
|
+
- **{id}:** Covered by `{skill_names}` — **Gap:** {what remains unaddressed}"
|
|
129
|
+
|
|
130
|
+
### 5. Append to Report
|
|
131
|
+
|
|
132
|
+
Write the **Requirements Coverage** section to `{outputFile}`:
|
|
133
|
+
- Include the full requirements coverage table
|
|
134
|
+
- Include recommendations for Not Addressed and Partially Fulfilled items
|
|
135
|
+
- Update frontmatter: append `'step-04-requirements'` to `stepsCompleted`
|
|
136
|
+
- Set `requirements_pass: "completed"`
|
|
137
|
+
- Set `requirements_fulfilled`, `requirements_partial`, `requirements_not_addressed` counts
|
|
138
|
+
|
|
139
|
+
### 6. Auto-Proceed to Next Step
|
|
140
|
+
|
|
141
|
+
"**Proceeding to synthesis...**"
|
|
142
|
+
|
|
143
|
+
Load, read the full file and then execute `{nextStepFile}`.
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
|
148
|
+
|
|
149
|
+
### ✅ SUCCESS:
|
|
150
|
+
|
|
151
|
+
- PRD availability checked first — skipped cleanly if not provided
|
|
152
|
+
- All requirements extracted from PRD with source section citations
|
|
153
|
+
- Each requirement assessed against actual skill capabilities (exports, descriptions)
|
|
154
|
+
- Verdicts include contributing skill names and specific capabilities
|
|
155
|
+
- Not Addressed items have actionable recommendations
|
|
156
|
+
- Requirements Coverage section appended to {outputFile}
|
|
157
|
+
- Auto-proceeded to step 05
|
|
158
|
+
|
|
159
|
+
### ❌ SYSTEM FAILURE:
|
|
160
|
+
|
|
161
|
+
- Fabricating requirements not stated in the PRD document
|
|
162
|
+
- Force-fitting skills to requirements they do not address
|
|
163
|
+
- Verdicts without evidence from actual skill content
|
|
164
|
+
- Not executing the skip path when no PRD was provided
|
|
165
|
+
- Producing synthesis or overall verdicts (that is Step 05)
|
|
166
|
+
- Hardcoded paths instead of frontmatter variables
|
|
167
|
+
|
|
168
|
+
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-05-synthesize'
|
|
3
|
+
description: 'Produce overall feasibility verdict, prescriptive recommendations, and diff from previous run'
|
|
4
|
+
|
|
5
|
+
nextStepFile: './step-06-report.md'
|
|
6
|
+
outputFile: '{forge_data_folder}/feasibility-report-{project_name}.md'
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Step 5: Synthesize Verdict
|
|
10
|
+
|
|
11
|
+
## STEP GOAL:
|
|
12
|
+
|
|
13
|
+
Calculate the overall feasibility verdict based on all three analysis passes, generate prescriptive recommendations for every non-verified finding, check for a previous feasibility report to produce a delta, and compile the synthesis section of the report.
|
|
14
|
+
|
|
15
|
+
## MANDATORY EXECUTION RULES (READ FIRST):
|
|
16
|
+
|
|
17
|
+
### Universal Rules:
|
|
18
|
+
|
|
19
|
+
- 📖 CRITICAL: Read the complete step file before taking any action
|
|
20
|
+
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
|
|
21
|
+
- ⚙️ TOOL/SUBPROCESS FALLBACK: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
|
|
22
|
+
- ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
23
|
+
|
|
24
|
+
### Role Reinforcement:
|
|
25
|
+
|
|
26
|
+
- ✅ You are a stack verification analyst delivering the final synthesis
|
|
27
|
+
- ✅ The overall verdict must follow the decision logic exactly — no subjectivity
|
|
28
|
+
- ✅ Every recommendation must be specific and actionable — not vague advice
|
|
29
|
+
|
|
30
|
+
### Step-Specific Rules:
|
|
31
|
+
|
|
32
|
+
- 🎯 Focus ONLY on synthesizing findings from Steps 02-04 into a verdict
|
|
33
|
+
- 🚫 FORBIDDEN to discover new findings or re-analyze skills
|
|
34
|
+
- 🚫 FORBIDDEN to present the final report to the user — that is Step 06
|
|
35
|
+
- 💬 Recommendations must name specific tools, libraries, or actions
|
|
36
|
+
|
|
37
|
+
## EXECUTION PROTOCOLS:
|
|
38
|
+
|
|
39
|
+
- 🎯 Apply verdict decision logic to produce FEASIBLE / CONDITIONALLY FEASIBLE / NOT FEASIBLE
|
|
40
|
+
- 💾 Append Synthesis & Recommendations section to {outputFile}
|
|
41
|
+
- 📖 Check for previous report and generate delta if found
|
|
42
|
+
- 🚫 Only synthesis — no new analysis, no final presentation
|
|
43
|
+
|
|
44
|
+
## CONTEXT BOUNDARIES:
|
|
45
|
+
|
|
46
|
+
- Available: Coverage matrix (Step 02), integration verdicts (Step 03), requirements coverage (Step 04 if applicable)
|
|
47
|
+
- Focus: Verdict calculation, recommendation generation, delta comparison
|
|
48
|
+
- Limits: Do not present the full report — that is Step 06
|
|
49
|
+
- Dependencies: Steps 02-03 must be complete; Step 04 completed or skipped
|
|
50
|
+
|
|
51
|
+
## MANDATORY SEQUENCE
|
|
52
|
+
|
|
53
|
+
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
|
|
54
|
+
|
|
55
|
+
### 1. Calculate Overall Verdict
|
|
56
|
+
|
|
57
|
+
Apply the following decision logic using findings from all completed passes:
|
|
58
|
+
|
|
59
|
+
**Evaluate in order — the first matching condition wins. Do not continue once a verdict is determined.**
|
|
60
|
+
|
|
61
|
+
**NOT FEASIBLE (evaluate first):**
|
|
62
|
+
- Any integration is **Blocked** → overall verdict is NOT FEASIBLE
|
|
63
|
+
- Rationale: a blocked integration represents a fundamental architectural incompatibility. Also note in the rationale any co-occurring Missing skills or Risky integrations so the user understands the full set of problems
|
|
64
|
+
|
|
65
|
+
**CONDITIONALLY FEASIBLE (evaluate second):**
|
|
66
|
+
If ANY of the following apply, the verdict is CONDITIONALLY FEASIBLE. Include ALL matching conditions in the rationale:
|
|
67
|
+
- Any technology is **Missing** from coverage (no skill exists)
|
|
68
|
+
- Any integration is **Risky** (but none Blocked)
|
|
69
|
+
- Requirements have any **Not Addressed** items
|
|
70
|
+
- Requirements have any **Partially Fulfilled** items
|
|
71
|
+
- Rationale: the stack can work but has gaps, risks, or unverified assumptions that must be addressed
|
|
72
|
+
|
|
73
|
+
**FEASIBLE (evaluate last):**
|
|
74
|
+
- Coverage is 100% (no Missing skills) AND all integrations are Verified or Plausible AND requirements are all Fulfilled (or requirements pass was skipped) AND no Blocked or Risky integrations → overall verdict is FEASIBLE
|
|
75
|
+
- Rationale: {IF requirements pass completed:} the stack can support the architecture as described — all requirements fully fulfilled. {IF requirements pass was skipped:} the stack can support the architecture as described — requirements were not evaluated (no PRD provided)
|
|
76
|
+
|
|
77
|
+
**Post-verdict: Zero integration pairs guard (apply after ANY verdict):**
|
|
78
|
+
If zero integration pairs were extracted (all four integration counts are 0) AND the architecture document references 2+ technologies:
|
|
79
|
+
- If the verdict was FEASIBLE, override to CONDITIONALLY FEASIBLE
|
|
80
|
+
- Regardless of verdict, append this note to the rationale: "No integration claims were found in the architecture document prose. Manual review recommended to confirm that technology relationships are not documented exclusively in diagrams or implied without explicit co-mention."
|
|
81
|
+
|
|
82
|
+
Store the verdict for use in the report.
|
|
83
|
+
|
|
84
|
+
### 2. Generate Prescriptive Recommendations
|
|
85
|
+
|
|
86
|
+
For each non-verified finding across all passes, generate an actionable next step:
|
|
87
|
+
|
|
88
|
+
**Missing skill (from Step 02):**
|
|
89
|
+
- "Run **[CS] Create Skill** or **[QS] Quick Skill** for `{library_name}`, then re-run **[VS]** to verify coverage."
|
|
90
|
+
|
|
91
|
+
**Risky integration (from Step 03):**
|
|
92
|
+
- If protocol mismatch → "Consider adding a bridge layer between `{lib_a}` and `{lib_b}` (e.g., HTTP adapter, message queue). Document the bridge in the architecture."
|
|
93
|
+
- If type incompatibility → "Add a serialization/conversion layer between `{lib_a}` and `{lib_b}` to resolve the type mismatch identified in their API surfaces."
|
|
94
|
+
- If weak evidence → "Add cross-references between `{lib_a}` and `{lib_b}` skills by re-running **[CS]** with integration context."
|
|
95
|
+
|
|
96
|
+
**Blocked integration (from Step 03):**
|
|
97
|
+
- If language barrier → "Replace `{lib_a}` with a `{lib_b_language}`-compatible alternative, or introduce an IPC/FFI bridge. Redesign the integration path in the architecture document."
|
|
98
|
+
- If fundamental incompatibility → "Replace `{blocked_lib}` with an alternative that is compatible with `{other_lib}` in the same domain, or redesign the integration path in the architecture document."
|
|
99
|
+
|
|
100
|
+
**Not Addressed requirement (from Step 04):**
|
|
101
|
+
- "No library in the stack covers `{requirement}`. Evaluate `{category}` libraries that provide this capability, generate a skill, then re-run **[VS]**."
|
|
102
|
+
|
|
103
|
+
**Partially Fulfilled requirement (from Step 04):**
|
|
104
|
+
- "Gap in `{requirement}`: {what_is_missing}. Consider extending `{contributing_skill}` or adding a dedicated library."
|
|
105
|
+
|
|
106
|
+
**Zero integration pairs (from Step 03):**
|
|
107
|
+
- If zero integration pairs were found AND the architecture references 2+ technologies: "No integration claims were found in the architecture document prose. Add explicit prose descriptions of how your technologies interact (not only in diagrams), then re-run **[VS]** to verify integrations."
|
|
108
|
+
|
|
109
|
+
### 3. Check for Previous Report
|
|
110
|
+
|
|
111
|
+
Check if a `previous_report` path was recorded in the current report's frontmatter. Since the current workflow run overwrites the report starting in Step 01, the delta feature requires the user to have saved a copy before re-running [VS].
|
|
112
|
+
|
|
113
|
+
**Note:** The delta feature is only available when the user has manually backed up a prior report and provided the path. To enable delta comparisons, instruct the user to copy their feasibility report (e.g., `feasibility-report-{project_name}-v1.md`) before re-running [VS], then provide the backup path when prompted in Step 01.
|
|
114
|
+
|
|
115
|
+
**If a previous report is found:**
|
|
116
|
+
- Load its verdict, coverage percentage, and integration verdicts
|
|
117
|
+
- Generate a delta comparison:
|
|
118
|
+
- **Improved items:** findings that were Risky/Blocked/Missing and are now Verified/Covered
|
|
119
|
+
- **Regressed items:** findings that were Verified/Covered and are now Risky/Blocked/Missing
|
|
120
|
+
- **New items:** findings not present in the previous report
|
|
121
|
+
- **Unchanged items:** count of findings with the same verdict
|
|
122
|
+
|
|
123
|
+
**If no previous report found:**
|
|
124
|
+
- Note: "First verification run — no delta available."
|
|
125
|
+
|
|
126
|
+
### 4. Compile Synthesis Section
|
|
127
|
+
|
|
128
|
+
Assemble the following for the report:
|
|
129
|
+
|
|
130
|
+
**Overall verdict** with rationale citing the decision logic.
|
|
131
|
+
|
|
132
|
+
**Recommendation list** ordered by priority (count total recommendations as `recommendation_count` — persist this count to `{outputFile}` frontmatter for use in step-06):
|
|
133
|
+
1. Blocked integrations (if any)
|
|
134
|
+
2. Missing skills
|
|
135
|
+
3. Risky integrations
|
|
136
|
+
4. Not Addressed requirements
|
|
137
|
+
5. Partially Fulfilled requirements
|
|
138
|
+
|
|
139
|
+
**Delta from previous run** (if applicable):
|
|
140
|
+
- Improved, regressed, new, unchanged counts
|
|
141
|
+
- Specific items that changed
|
|
142
|
+
|
|
143
|
+
**Suggested next workflow:**
|
|
144
|
+
- FEASIBLE → "Proceed to **[RA] Refine Architecture** to produce an implementation-ready architecture, then **[SS]** to compose your stack skill, then **[TS]** to test and **[EX]** to export."
|
|
145
|
+
- CONDITIONALLY FEASIBLE → "Address the {recommendation_count} recommendations above, then re-run **[VS]**. Once all clear, proceed to **[RA]**."
|
|
146
|
+
- NOT FEASIBLE → "Critical blockers must be resolved before proceeding. Apply the recommendations above and re-run **[VS]**."
|
|
147
|
+
|
|
148
|
+
### 5. Append to Report
|
|
149
|
+
|
|
150
|
+
Write the **Synthesis & Recommendations** section to `{outputFile}`:
|
|
151
|
+
- Include overall verdict with rationale
|
|
152
|
+
- Include prioritized recommendation list
|
|
153
|
+
- Include delta from previous run (if applicable)
|
|
154
|
+
- Include suggested next workflow
|
|
155
|
+
- **Replace the body placeholder** in the `## Overall Verdict` section: replace `{FEASIBLE / CONDITIONALLY FEASIBLE / NOT FEASIBLE}` and `{1-2 sentence summary}` with the actual calculated verdict and rationale text
|
|
156
|
+
- Update frontmatter: append `'step-05-synthesize'` to `stepsCompleted`
|
|
157
|
+
- Set `overall_verdict` to the calculated verdict
|
|
158
|
+
- Set `recommendation_count` to the total number of recommendations
|
|
159
|
+
- If delta was computed (section 3), set `delta_improved`, `delta_regressed`, `delta_new`, `delta_unchanged` in frontmatter to the respective counts
|
|
160
|
+
- Verify that `integrations_verified`, `integrations_plausible`, `integrations_risky`, `integrations_blocked` in frontmatter match the counts from Step 03 (these were set in Step 03). If a discrepancy is found, overwrite the frontmatter counts with the values from Step 03 — the report file is the system of record
|
|
161
|
+
|
|
162
|
+
### 6. Auto-Proceed to Next Step
|
|
163
|
+
|
|
164
|
+
"**Proceeding to final report presentation...**"
|
|
165
|
+
|
|
166
|
+
Load, read the full file and then execute `{nextStepFile}`.
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
|
171
|
+
|
|
172
|
+
### ✅ SUCCESS:
|
|
173
|
+
|
|
174
|
+
- Overall verdict calculated using the exact decision logic (not subjective judgment)
|
|
175
|
+
- Every non-verified finding has a specific, actionable recommendation
|
|
176
|
+
- Recommendations name concrete tools ([CS], [QS], [VS], [RA]) and specific libraries
|
|
177
|
+
- Previous report delta generated if applicable
|
|
178
|
+
- Synthesis section appended to {outputFile} with verdict, recommendations, and next workflow
|
|
179
|
+
- Frontmatter updated with overall_verdict and metric counts
|
|
180
|
+
- Auto-proceeded to step 06
|
|
181
|
+
|
|
182
|
+
### ❌ SYSTEM FAILURE:
|
|
183
|
+
|
|
184
|
+
- Subjective or vague overall verdict not following the decision logic
|
|
185
|
+
- Recommendations without specific actions ("improve the integration")
|
|
186
|
+
- Not checking for previous report
|
|
187
|
+
- Discovering new findings or re-analyzing skills
|
|
188
|
+
- Presenting the full report to the user (that is Step 06)
|
|
189
|
+
- Hardcoded paths instead of frontmatter variables
|
|
190
|
+
|
|
191
|
+
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'step-06-report'
|
|
3
|
+
description: 'Present the final feasibility report to the user with verdict, findings, and next steps'
|
|
4
|
+
|
|
5
|
+
outputFile: '{forge_data_folder}/feasibility-report-{project_name}.md'
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Step 6: Present Report
|
|
9
|
+
|
|
10
|
+
## STEP GOAL:
|
|
11
|
+
|
|
12
|
+
Present the complete feasibility report to the user. Display the overall verdict prominently, walk through key findings from each analysis pass, present actionable next steps based on the verdict, and offer the user options to review the full report or exit.
|
|
13
|
+
|
|
14
|
+
## MANDATORY EXECUTION RULES (READ FIRST):
|
|
15
|
+
|
|
16
|
+
### Universal Rules:
|
|
17
|
+
|
|
18
|
+
- 📖 CRITICAL: Read the complete step file before taking any action
|
|
19
|
+
- ⚙️ TOOL/SUBPROCESS FALLBACK: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
|
|
20
|
+
- ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
21
|
+
|
|
22
|
+
### Role Reinforcement:
|
|
23
|
+
|
|
24
|
+
- ✅ You are a stack verification analyst delivering the final report
|
|
25
|
+
- ✅ Present findings clearly and concisely — the user needs to make decisions
|
|
26
|
+
- ✅ Next step recommendations must match the verdict exactly
|
|
27
|
+
|
|
28
|
+
### Step-Specific Rules:
|
|
29
|
+
|
|
30
|
+
- 🎯 Focus ONLY on presenting the completed report — no new analysis
|
|
31
|
+
- 🚫 FORBIDDEN to discover new findings, re-analyze skills, or change verdicts
|
|
32
|
+
- 🚫 FORBIDDEN to modify the report content — only read and present
|
|
33
|
+
- 📋 This is the FINAL step — no nextStepFile
|
|
34
|
+
|
|
35
|
+
## EXECUTION PROTOCOLS:
|
|
36
|
+
|
|
37
|
+
- 🎯 Load and present the complete feasibility report
|
|
38
|
+
- 💾 No new content written — report was finalized in Step 05
|
|
39
|
+
- 📖 Present summary, detailed findings, and next steps clearly
|
|
40
|
+
- 🚫 Read-only presentation — do not alter report data
|
|
41
|
+
|
|
42
|
+
## CONTEXT BOUNDARIES:
|
|
43
|
+
|
|
44
|
+
- Available: Complete {outputFile} with all sections from Steps 01-05
|
|
45
|
+
- Focus: Clear, actionable presentation of findings
|
|
46
|
+
- Limits: Do not add new analysis or change any verdicts
|
|
47
|
+
- Dependencies: All previous steps must be complete (Steps 01-05)
|
|
48
|
+
|
|
49
|
+
## MANDATORY SEQUENCE
|
|
50
|
+
|
|
51
|
+
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
|
|
52
|
+
|
|
53
|
+
### 1. Load Complete Report
|
|
54
|
+
|
|
55
|
+
Read the entire `{outputFile}` to have all data available for presentation.
|
|
56
|
+
|
|
57
|
+
Verify all expected sections are present: Coverage Matrix, Integration Verdicts, Requirements Coverage (or skipped notation), Synthesis & Recommendations.
|
|
58
|
+
|
|
59
|
+
**Extract metrics from frontmatter:** Read `skills_analyzed`, `coverage_percentage`, `integrations_verified` (as `verified_count`), `integrations_plausible` (as `plausible_count`), `integrations_risky` (as `risky_count`), `integrations_blocked` (as `blocked_count`), `requirements_fulfilled` (as `fulfilled_count`), `requirements_partial` (as `partial_count`), `requirements_not_addressed` (as `not_addressed_count`), `requirements_pass`, `overall_verdict`, and `recommendation_count`. Use these mapped display names in the summary table and next steps below.
|
|
60
|
+
|
|
61
|
+
### 2. Present Summary
|
|
62
|
+
|
|
63
|
+
"**Verify Stack — Feasibility Report**
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
**Overall Verdict: {FEASIBLE / CONDITIONALLY FEASIBLE / NOT FEASIBLE}**
|
|
68
|
+
|
|
69
|
+
| Metric | Value |
|
|
70
|
+
|--------|-------|
|
|
71
|
+
| **Skills Analyzed** | {skills_analyzed} |
|
|
72
|
+
| **Coverage** | {coverage_percentage}% |
|
|
73
|
+
| **Integrations Verified** | {verified_count} |
|
|
74
|
+
| **Integrations Plausible** | {plausible_count} |
|
|
75
|
+
| **Integrations Risky** | {risky_count} |
|
|
76
|
+
| **Integrations Blocked** | {blocked_count} |
|
|
77
|
+
| **Requirements Fulfilled** | {fulfilled_count or 'N/A — no PRD'} |
|
|
78
|
+
| **Requirements Partially Fulfilled** | {partial_count or 'N/A — no PRD'} |
|
|
79
|
+
| **Requirements Not Addressed** | {not_addressed_count or 'N/A — no PRD'} |
|
|
80
|
+
|
|
81
|
+
{IF delta_improved is not null (delta from previous run exists):}
|
|
82
|
+
**Delta from Previous Run:**
|
|
83
|
+
- Improved: {delta_improved} items
|
|
84
|
+
- Regressed: {delta_regressed} items
|
|
85
|
+
- New: {delta_new} items
|
|
86
|
+
- Unchanged: {delta_unchanged} items
|
|
87
|
+
|
|
88
|
+
---"
|
|
89
|
+
|
|
90
|
+
### 3. Present Detailed Findings
|
|
91
|
+
|
|
92
|
+
Walk through each section briefly, focusing on items that need attention:
|
|
93
|
+
|
|
94
|
+
"**Coverage Highlights:**
|
|
95
|
+
{IF 100% coverage:}
|
|
96
|
+
- All referenced technologies have a matching skill
|
|
97
|
+
|
|
98
|
+
{IF any missing:}
|
|
99
|
+
- **Missing:** {list of missing technology names}
|
|
100
|
+
|
|
101
|
+
**Integration Verdicts:**
|
|
102
|
+
{IF all Verified/Plausible:}
|
|
103
|
+
- All integration pairs verified or plausible — no blockers
|
|
104
|
+
|
|
105
|
+
{IF any Risky:}
|
|
106
|
+
- **Risky:** {list of risky pairs with brief concern}
|
|
107
|
+
|
|
108
|
+
{IF any Blocked:}
|
|
109
|
+
- **Blocked:** {list of blocked pairs with brief incompatibility}
|
|
110
|
+
|
|
111
|
+
{IF requirements pass completed:}
|
|
112
|
+
**Requirements Gaps:**
|
|
113
|
+
{IF all Fulfilled:}
|
|
114
|
+
- All stated requirements addressed by the stack
|
|
115
|
+
|
|
116
|
+
{IF any Partially Fulfilled:}
|
|
117
|
+
- **Partially Fulfilled:** {list of partially covered requirements with gap description}
|
|
118
|
+
|
|
119
|
+
{IF any Not Addressed:}
|
|
120
|
+
- **Not Addressed:** {list of unaddressed requirements}"
|
|
121
|
+
|
|
122
|
+
### 4. Present Next Steps
|
|
123
|
+
|
|
124
|
+
Based on the overall verdict, present the appropriate recommendation:
|
|
125
|
+
|
|
126
|
+
**IF FEASIBLE:**
|
|
127
|
+
"**Your stack is verified.** All technologies are covered, integrations are compatible, and requirements are all fulfilled (or requirements pass was skipped).
|
|
128
|
+
|
|
129
|
+
**Recommended next steps:**
|
|
130
|
+
1. **[RA] Refine Architecture** — Produce an implementation-ready architecture document enriched with skill-backed API details
|
|
131
|
+
2. **[SS] Create Stack Skill** — compose your individual skills into a unified stack skill, providing the refined architecture doc when prompted
|
|
132
|
+
3. **[TS] Test Skill** → **[EX] Export Skill** — Verify completeness and package for distribution"
|
|
133
|
+
|
|
134
|
+
**IF CONDITIONALLY FEASIBLE:**
|
|
135
|
+
"**Your stack is conditionally feasible.** There are {recommendation_count} items to address before proceeding.
|
|
136
|
+
|
|
137
|
+
**Required actions:**
|
|
138
|
+
{List the specific recommendations from Step 05 synthesis}
|
|
139
|
+
|
|
140
|
+
**After addressing these items:** Re-run **[VS] Verify Stack** to confirm resolution, then proceed to **[RA]**."
|
|
141
|
+
|
|
142
|
+
**IF NOT FEASIBLE:**
|
|
143
|
+
"**Critical blockers must be resolved.** The stack cannot support the architecture as described.
|
|
144
|
+
|
|
145
|
+
**Critical actions:**
|
|
146
|
+
{List the blocked integration recommendations and missing skill actions from Step 05}
|
|
147
|
+
|
|
148
|
+
**After resolving blockers:** Re-run **[VS] Verify Stack**. Repeat until verdict improves to FEASIBLE or CONDITIONALLY FEASIBLE."
|
|
149
|
+
|
|
150
|
+
### 5. Present Menu
|
|
151
|
+
|
|
152
|
+
Display: "**[R] Review full report** | **[X] Exit verification**"
|
|
153
|
+
|
|
154
|
+
#### Menu Handling Logic:
|
|
155
|
+
|
|
156
|
+
- **IF R:** Walk through the report section by section, presenting each section's content from {outputFile} in a readable format. After completing the walkthrough, redisplay the menu. (Note: the R walkthrough loop terminates only when the user selects X.)
|
|
157
|
+
- **IF X:** "**Feasibility report saved to:** `{outputFile}`
|
|
158
|
+
|
|
159
|
+
Re-run **[VS] Verify Stack** anytime after making changes to your skills or architecture document.
|
|
160
|
+
|
|
161
|
+
**Verification workflow complete.**"
|
|
162
|
+
|
|
163
|
+
#### EXECUTION RULES:
|
|
164
|
+
|
|
165
|
+
- ALWAYS halt and wait for user input after presenting the menu
|
|
166
|
+
- R may be selected multiple times — always walk through the full report
|
|
167
|
+
- X ends the workflow
|
|
168
|
+
|
|
169
|
+
## CRITICAL STEP COMPLETION NOTE
|
|
170
|
+
|
|
171
|
+
This is the final step of the verify-stack workflow. When the user selects X, the workflow is complete. The feasibility report at `{outputFile}` contains the full analysis: Coverage Matrix, Integration Verdicts, Requirements Coverage, and Synthesis & Recommendations.
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
|
176
|
+
|
|
177
|
+
### ✅ SUCCESS:
|
|
178
|
+
|
|
179
|
+
- Complete report loaded and verified for section completeness
|
|
180
|
+
- Overall verdict displayed prominently with key metrics
|
|
181
|
+
- Delta from previous run shown if applicable
|
|
182
|
+
- Detailed findings presented with focus on risky/blocked/missing items
|
|
183
|
+
- Next steps match the verdict exactly (FEASIBLE/CONDITIONALLY FEASIBLE/NOT FEASIBLE)
|
|
184
|
+
- Menu presented with R and X options
|
|
185
|
+
- Report walkthrough available on R selection
|
|
186
|
+
- Workflow exits cleanly on X with saved file path
|
|
187
|
+
|
|
188
|
+
### ❌ SYSTEM FAILURE:
|
|
189
|
+
|
|
190
|
+
- Discovering new findings or changing verdicts in this step
|
|
191
|
+
- Modifying the report content
|
|
192
|
+
- Next step recommendations that do not match the verdict
|
|
193
|
+
- Not presenting the menu
|
|
194
|
+
- Not displaying the report save path on exit
|
|
195
|
+
- Hardcoded paths instead of frontmatter variables
|
|
196
|
+
|
|
197
|
+
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: verify-stack
|
|
3
|
+
description: Validate tech stack feasibility against architecture and PRD documents
|
|
4
|
+
web_bundle: true
|
|
5
|
+
installed_path: '{project-root}/_bmad/skf/workflows/skillforge/verify-stack'
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Verify Stack
|
|
9
|
+
|
|
10
|
+
**Goal:** Cross-reference generated skills against architecture and PRD documents to produce a feasibility report with evidence-backed integration verdicts, coverage analysis, and requirements mapping.
|
|
11
|
+
|
|
12
|
+
**Your Role:** In addition to your name, communication_style, and persona, you are also a stack feasibility analyst and integration verifier operating in Ferris Audit mode. You bring expertise in API surface analysis, cross-library compatibility assessment, and architecture validation, while the user brings their architecture vision and generated skills. Execute with analytical precision — every verdict must cite evidence from the generated skills.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## WORKFLOW ARCHITECTURE
|
|
17
|
+
|
|
18
|
+
This uses **step-file architecture** for disciplined execution:
|
|
19
|
+
|
|
20
|
+
### Core Principles
|
|
21
|
+
|
|
22
|
+
- **Micro-file Design**: Each step is a self-contained instruction file that must be followed exactly
|
|
23
|
+
- **Just-In-Time Loading**: Only the current step file is in memory — never load future step files until told to do so
|
|
24
|
+
- **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed
|
|
25
|
+
- **Read-Only Analysis**: This workflow never modifies skills or input documents — it only reads and produces a feasibility report
|
|
26
|
+
- **Evidence-Backed Verdicts**: Every integration verdict must cite specific APIs, types, or function signatures from the generated skills
|
|
27
|
+
|
|
28
|
+
### Step Processing Rules
|
|
29
|
+
|
|
30
|
+
1. **READ COMPLETELY**: Always read the entire step file before taking any action
|
|
31
|
+
2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate
|
|
32
|
+
3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection
|
|
33
|
+
4. **CHECK CONTINUATION**: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue)
|
|
34
|
+
5. **LOAD NEXT**: When directed, load, read entire file, then execute the next step file
|
|
35
|
+
|
|
36
|
+
### Critical Rules (NO EXCEPTIONS)
|
|
37
|
+
|
|
38
|
+
- 🛑 **NEVER** load multiple step files simultaneously
|
|
39
|
+
- 📖 **ALWAYS** read entire step file before execution
|
|
40
|
+
- 🚫 **NEVER** skip steps or optimize the sequence
|
|
41
|
+
- 🎯 **ALWAYS** follow the exact instructions in the step file
|
|
42
|
+
- ⏸️ **ALWAYS** halt at menus and wait for user input
|
|
43
|
+
- 📋 **NEVER** create mental todo lists from future steps
|
|
44
|
+
- ⚙️ **TOOL/SUBPROCESS FALLBACK**: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
|
|
45
|
+
- ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
|
|
46
|
+
- 🔒 **READ-ONLY**: This workflow NEVER modifies skills, architecture docs, or PRD files
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## INITIALIZATION SEQUENCE
|
|
51
|
+
|
|
52
|
+
### 1. Module Configuration Loading
|
|
53
|
+
|
|
54
|
+
Load and read full config from {project-root}/_bmad/skf/config.yaml and resolve:
|
|
55
|
+
|
|
56
|
+
- `project_name`, `user_name`, `communication_language`
|
|
57
|
+
- `skills_output_folder`, `forge_data_folder`, `document_output_language`
|
|
58
|
+
|
|
59
|
+
### 2. First Step Execution
|
|
60
|
+
|
|
61
|
+
Load, read the full file and then execute `./steps-c/step-01-init.md` to begin the workflow.
|