smart-spec-kit-mcp 2.1.1 → 2.1.3

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.
@@ -0,0 +1,89 @@
1
+ # Validation Prompt
2
+
3
+ ## Purpose
4
+
5
+ Execute validation checks against customizable rules after specific workflow phases.
6
+
7
+ ## Validation Types
8
+
9
+ Spec-Kit supports multiple validation types:
10
+
11
+ 1. **Security Validation** - Check security rules compliance
12
+ 2. **RGPD Validation** - Check GDPR/RGPD compliance
13
+ 3. **Architecture Validation** - Check architecture principles
14
+ 4. **Custom Validation** - Check custom project rules
15
+
16
+ ## Process
17
+
18
+ ### 1. Load Rules
19
+
20
+ Load the appropriate rules file from `.spec-kit/rules/`:
21
+ - `security-rules.md` for security validation
22
+ - `rgpd-rules.md` for RGPD/GDPR validation
23
+ - Custom files as defined by user
24
+
25
+ ### 2. Load Target Document
26
+
27
+ Load the document to validate:
28
+ - For **spec** phase: Load from `specs/*-spec.md`
29
+ - For **plan** phase: Load from `specs/plan.md`
30
+ - For **implementation** phase: Analyze recent code changes
31
+
32
+ ### 3. Evaluate Each Rule
33
+
34
+ For each rule in the rules file:
35
+
36
+ 1. Determine if the rule is applicable to this feature
37
+ 2. Check if the requirement is addressed
38
+ 3. Mark status: ✅ Compliant | ⚠️ Partial | ❌ Non-Compliant | ➖ N/A
39
+ 4. Document evidence or gaps
40
+
41
+ ### 4. Generate Report
42
+
43
+ Create a validation report with:
44
+ - Summary statistics
45
+ - Critical issues (blocking)
46
+ - Warnings (should fix)
47
+ - Recommendations (nice to have)
48
+
49
+ ## Validation Triggers
50
+
51
+ Validations can be triggered:
52
+
53
+ - **Manually**: `speckit: validate security` or `speckit: validate rgpd`
54
+ - **In Workflow**: As a step in feature-full or custom workflows
55
+ - **After Phase**: Automatically after spec or implementation
56
+
57
+ ## Output
58
+
59
+ Save validation reports to:
60
+ - `specs/validations/{type}-{date}.md`
61
+
62
+ ## Instructions for Copilot
63
+
64
+ When performing validation:
65
+
66
+ 1. **Be Thorough**: Check every applicable rule
67
+ 2. **Be Specific**: Cite specific sections or code that address rules
68
+ 3. **Be Constructive**: Provide actionable recommendations
69
+ 4. **Be Honest**: Mark non-compliant if not addressed, don't assume
70
+
71
+ ## Custom Rules
72
+
73
+ Users can create custom rules files in `.spec-kit/rules/`:
74
+
75
+ ```markdown
76
+ # My Custom Rules
77
+
78
+ ## Category Name
79
+
80
+ ### RULE-001: Rule Title
81
+ - [ ] Checklist item 1
82
+ - [ ] Checklist item 2
83
+
84
+ ### RULE-002: Another Rule
85
+ - [ ] Check this
86
+ - [ ] Check that
87
+ ```
88
+
89
+ Then trigger with: `speckit: validate my-custom-rules`
@@ -0,0 +1,187 @@
1
+ # RGPD/GDPR Validation Rules
2
+
3
+ These rules are used by Spec-Kit to validate GDPR compliance after specification or implementation phases.
4
+
5
+ > **Customization**: Edit this file to match your organization's data protection policies and local regulations.
6
+
7
+ ---
8
+
9
+ ## Data Identification
10
+
11
+ ### RGPD-001: Personal Data Inventory
12
+ - [ ] All personal data collected is identified and documented
13
+ - [ ] Data categories are classified (standard, sensitive, special)
14
+ - [ ] Data sources are documented (user input, API, third-party)
15
+
16
+ ### RGPD-002: Data Mapping
17
+ - [ ] Data flow is documented (collection → processing → storage → deletion)
18
+ - [ ] All data processors are identified
19
+ - [ ] Cross-border transfers documented (if applicable)
20
+
21
+ ---
22
+
23
+ ## Legal Basis (Article 6)
24
+
25
+ ### RGPD-010: Lawful Processing
26
+ - [ ] Legal basis for each processing activity is documented
27
+ - [ ] Consent (freely given, specific, informed, unambiguous)
28
+ - [ ] Contract execution
29
+ - [ ] Legal obligation
30
+ - [ ] Vital interests
31
+ - [ ] Public interest
32
+ - [ ] Legitimate interests (with balancing test)
33
+
34
+ ### RGPD-011: Consent Management
35
+ - [ ] Consent is obtained before processing (if consent-based)
36
+ - [ ] Consent can be withdrawn as easily as given
37
+ - [ ] Consent records are maintained
38
+ - [ ] Age verification for minors (< 16 years)
39
+
40
+ ---
41
+
42
+ ## Data Subject Rights (Articles 12-22)
43
+
44
+ ### RGPD-020: Right to Information (Art. 13-14)
45
+ - [ ] Privacy notice provided at data collection
46
+ - [ ] Purpose of processing clearly stated
47
+ - [ ] Data retention period communicated
48
+ - [ ] Third-party sharing disclosed
49
+
50
+ ### RGPD-021: Right of Access (Art. 15)
51
+ - [ ] Users can request copy of their data
52
+ - [ ] Response within 30 days
53
+ - [ ] Data provided in machine-readable format
54
+
55
+ ### RGPD-022: Right to Rectification (Art. 16)
56
+ - [ ] Users can correct inaccurate data
57
+ - [ ] Users can complete incomplete data
58
+ - [ ] Updates propagated to third parties
59
+
60
+ ### RGPD-023: Right to Erasure / RTBF (Art. 17)
61
+ - [ ] Users can request data deletion
62
+ - [ ] Deletion includes backups (within reasonable time)
63
+ - [ ] Third parties notified of erasure requests
64
+ - [ ] Exceptions documented (legal retention, public interest)
65
+
66
+ ### RGPD-024: Right to Data Portability (Art. 20)
67
+ - [ ] Data exportable in structured format (JSON, CSV)
68
+ - [ ] Direct transfer to another controller (if feasible)
69
+
70
+ ### RGPD-025: Right to Object (Art. 21)
71
+ - [ ] Users can object to processing
72
+ - [ ] Objection mechanism easily accessible
73
+ - [ ] Processing stops unless compelling grounds exist
74
+
75
+ ---
76
+
77
+ ## Data Protection Principles
78
+
79
+ ### RGPD-030: Data Minimization
80
+ - [ ] Only necessary data collected
81
+ - [ ] No "nice to have" data collection
82
+ - [ ] Optional fields clearly marked
83
+
84
+ ### RGPD-031: Purpose Limitation
85
+ - [ ] Data used only for stated purposes
86
+ - [ ] New purposes require new consent/basis
87
+ - [ ] No data repurposing without user knowledge
88
+
89
+ ### RGPD-032: Storage Limitation
90
+ - [ ] Retention periods defined for each data type
91
+ - [ ] Automatic deletion after retention period
92
+ - [ ] Archival vs. active data distinguished
93
+
94
+ ### RGPD-033: Accuracy
95
+ - [ ] Data kept up-to-date
96
+ - [ ] Users can update their data
97
+ - [ ] Inaccurate data corrected promptly
98
+
99
+ ---
100
+
101
+ ## Security Measures (Article 32)
102
+
103
+ ### RGPD-040: Technical Measures
104
+ - [ ] Encryption at rest and in transit
105
+ - [ ] Pseudonymization where possible
106
+ - [ ] Access controls implemented
107
+ - [ ] Regular security testing
108
+
109
+ ### RGPD-041: Organizational Measures
110
+ - [ ] Staff trained on data protection
111
+ - [ ] Data protection policies documented
112
+ - [ ] Incident response procedures in place
113
+
114
+ ---
115
+
116
+ ## Third Parties & Processors
117
+
118
+ ### RGPD-050: Processor Agreements (Art. 28)
119
+ - [ ] DPA (Data Processing Agreement) with all processors
120
+ - [ ] Processor security measures verified
121
+ - [ ] Sub-processors documented and approved
122
+
123
+ ### RGPD-051: International Transfers
124
+ - [ ] Adequacy decision exists (for destination country)
125
+ - [ ] Standard Contractual Clauses (SCCs) in place
126
+ - [ ] Supplementary measures if required
127
+
128
+ ---
129
+
130
+ ## Documentation & Accountability
131
+
132
+ ### RGPD-060: Records of Processing (Art. 30)
133
+ - [ ] Processing activities documented
134
+ - [ ] ROPA (Record of Processing Activities) maintained
135
+ - [ ] Available for supervisory authority
136
+
137
+ ### RGPD-061: DPIA (Art. 35)
138
+ - [ ] DPIA required? (high-risk processing)
139
+ - [ ] DPIA completed if required
140
+ - [ ] Residual risks documented and accepted
141
+
142
+ ---
143
+
144
+ ## Validation Instructions
145
+
146
+ When validating against these rules:
147
+
148
+ 1. **For Specifications**: Verify that data protection requirements are documented and RGPD compliance is designed-in
149
+ 2. **For Implementation**: Verify that code implements data protection measures and user rights mechanisms
150
+ 3. **Mark Status**:
151
+ - ✅ **Compliant**: Rule is fully addressed
152
+ - ⚠️ **Partial**: Rule is partially addressed, needs improvement
153
+ - ❌ **Non-Compliant**: Rule is not addressed, blocking issue
154
+ - ➖ **N/A**: Rule does not apply to this feature
155
+
156
+ ## Report Format
157
+
158
+ ```markdown
159
+ ## RGPD Compliance Report
160
+
161
+ **Feature**: {feature_name}
162
+ **Date**: {date}
163
+ **Phase**: {spec|implementation}
164
+ **DPO Review Required**: {yes|no}
165
+
166
+ ### Data Inventory
167
+ | Data Type | Category | Legal Basis | Retention | Processors |
168
+ |-----------|----------|-------------|-----------|------------|
169
+ | email | Personal | Consent | 2 years | SendGrid |
170
+
171
+ ### Summary
172
+ - Compliant: X rules
173
+ - Partial: X rules
174
+ - Non-Compliant: X rules
175
+ - N/A: X rules
176
+
177
+ ### Findings
178
+
179
+ #### Critical Issues (Blocking)
180
+ {list blocking compliance issues}
181
+
182
+ #### Warnings
183
+ {list partial compliance items}
184
+
185
+ #### Recommendations
186
+ {list improvements for future}
187
+ ```
@@ -0,0 +1,138 @@
1
+ # Security Validation Rules
2
+
3
+ These rules are used by Spec-Kit to validate security compliance after specification or implementation phases.
4
+
5
+ > **Customization**: Edit this file to match your organization's security policies.
6
+
7
+ ---
8
+
9
+ ## Authentication & Authorization
10
+
11
+ ### AUTH-001: Authentication Required
12
+ - [ ] All endpoints accessing sensitive data require authentication
13
+ - [ ] Authentication mechanism is industry-standard (OAuth2, OIDC, SAML)
14
+ - [ ] No credentials stored in plain text
15
+
16
+ ### AUTH-002: Authorization Controls
17
+ - [ ] Role-based access control (RBAC) implemented
18
+ - [ ] Principle of least privilege applied
19
+ - [ ] Authorization checked on every request (not just UI)
20
+
21
+ ### AUTH-003: Session Management
22
+ - [ ] Session tokens are cryptographically secure
23
+ - [ ] Session timeout implemented
24
+ - [ ] Session invalidation on logout
25
+
26
+ ---
27
+
28
+ ## Data Protection
29
+
30
+ ### DATA-001: Data at Rest
31
+ - [ ] Sensitive data encrypted at rest (AES-256 or equivalent)
32
+ - [ ] Encryption keys managed securely (HSM, Key Vault)
33
+ - [ ] Database credentials not hardcoded
34
+
35
+ ### DATA-002: Data in Transit
36
+ - [ ] TLS 1.2+ required for all communications
37
+ - [ ] Certificate validation enabled
38
+ - [ ] No sensitive data in URLs
39
+
40
+ ### DATA-003: Data Sanitization
41
+ - [ ] Input validation on all user inputs
42
+ - [ ] Output encoding to prevent XSS
43
+ - [ ] Parameterized queries to prevent SQL injection
44
+
45
+ ---
46
+
47
+ ## API Security
48
+
49
+ ### API-001: Input Validation
50
+ - [ ] All inputs validated (type, length, format, range)
51
+ - [ ] Request size limits enforced
52
+ - [ ] File upload restrictions (type, size)
53
+
54
+ ### API-002: Rate Limiting
55
+ - [ ] Rate limiting implemented on all endpoints
56
+ - [ ] Brute force protection on authentication
57
+ - [ ] DDoS mitigation considered
58
+
59
+ ### API-003: Error Handling
60
+ - [ ] No stack traces exposed to users
61
+ - [ ] Generic error messages for security failures
62
+ - [ ] Detailed errors logged server-side only
63
+
64
+ ---
65
+
66
+ ## Infrastructure
67
+
68
+ ### INFRA-001: Secrets Management
69
+ - [ ] Secrets stored in secure vault (Azure Key Vault, AWS Secrets Manager)
70
+ - [ ] No secrets in source code or config files
71
+ - [ ] Secrets rotated regularly
72
+
73
+ ### INFRA-002: Logging & Monitoring
74
+ - [ ] Security events logged (auth failures, access denied)
75
+ - [ ] No sensitive data in logs
76
+ - [ ] Logs protected from tampering
77
+
78
+ ### INFRA-003: Dependencies
79
+ - [ ] Dependencies scanned for vulnerabilities
80
+ - [ ] Regular security updates applied
81
+ - [ ] No known vulnerable dependencies
82
+
83
+ ---
84
+
85
+ ## Compliance Checks
86
+
87
+ ### COMP-001: OWASP Top 10
88
+ - [ ] Injection vulnerabilities addressed
89
+ - [ ] Broken authentication prevented
90
+ - [ ] Sensitive data exposure mitigated
91
+ - [ ] XXE attacks prevented
92
+ - [ ] Broken access control fixed
93
+ - [ ] Security misconfiguration avoided
94
+ - [ ] XSS vulnerabilities prevented
95
+ - [ ] Insecure deserialization handled
96
+ - [ ] Components with known vulnerabilities updated
97
+ - [ ] Insufficient logging addressed
98
+
99
+ ---
100
+
101
+ ## Validation Instructions
102
+
103
+ When validating against these rules:
104
+
105
+ 1. **For Specifications**: Verify that security requirements are documented and address each applicable rule
106
+ 2. **For Implementation**: Verify that code implements the security controls described in the specification
107
+ 3. **Mark Status**:
108
+ - ✅ **Compliant**: Rule is fully addressed
109
+ - ⚠️ **Partial**: Rule is partially addressed, needs improvement
110
+ - ❌ **Non-Compliant**: Rule is not addressed, blocking issue
111
+ - ➖ **N/A**: Rule does not apply to this feature
112
+
113
+ ## Report Format
114
+
115
+ ```markdown
116
+ ## Security Validation Report
117
+
118
+ **Feature**: {feature_name}
119
+ **Date**: {date}
120
+ **Phase**: {spec|implementation}
121
+
122
+ ### Summary
123
+ - Compliant: X rules
124
+ - Partial: X rules
125
+ - Non-Compliant: X rules
126
+ - N/A: X rules
127
+
128
+ ### Findings
129
+
130
+ #### Critical Issues
131
+ {list critical non-compliant items}
132
+
133
+ #### Warnings
134
+ {list partial compliance items}
135
+
136
+ #### Recommendations
137
+ {list improvements}
138
+ ```
@@ -0,0 +1,99 @@
1
+ # Bugfix Workflow
2
+ # Streamlined process for bug fixes with validation checkpoints
3
+
4
+ name: bugfix
5
+ displayName: "Bug Fix"
6
+ description: "Structured workflow for analyzing, fixing, and validating bug corrections"
7
+
8
+ metadata:
9
+ version: "1.0"
10
+ author: "Spec-Kit"
11
+ tags:
12
+ - bugfix
13
+ - hotfix
14
+ - correction
15
+
16
+ template: bugfix-report.md
17
+ defaultAgent: SpecAgent
18
+
19
+ steps:
20
+ - id: analyze-bug
21
+ name: "Analyze Bug & Root Cause"
22
+ action: fetch_ado
23
+ description: |
24
+ Retrieve the bug work item from Azure DevOps and analyze:
25
+ - Reproduction steps
26
+ - Error logs and stack traces
27
+ - Affected components
28
+ - User impact assessment
29
+
30
+ Identify the root cause of the issue.
31
+ outputs:
32
+ - bug_data
33
+ - root_cause_analysis
34
+
35
+ - id: plan-fix
36
+ name: "Plan Correction"
37
+ action: call_agent
38
+ agent: PlanAgent
39
+ description: |
40
+ Create a correction plan including:
41
+ - Proposed fix approach
42
+ - Files/components to modify
43
+ - Potential side effects
44
+ - Rollback strategy if needed
45
+
46
+ Keep the fix minimal and focused.
47
+ inputs:
48
+ source: "root_cause_analysis"
49
+ outputs:
50
+ - fix_plan
51
+
52
+ - id: security-check
53
+ name: "Security Validation"
54
+ action: review
55
+ agent: GovAgent
56
+ description: |
57
+ Quick security review of the proposed fix:
58
+ - [ ] No new vulnerabilities introduced
59
+ - [ ] Input validation maintained
60
+ - [ ] No sensitive data exposure
61
+ - [ ] Authentication/Authorization intact
62
+ inputs:
63
+ document: "fix_plan"
64
+ outputs:
65
+ - security_clearance
66
+
67
+ - id: implement-fix
68
+ name: "Implement & Test"
69
+ action: generate_content
70
+ description: |
71
+ Implement the fix following the plan:
72
+ 1. Write the code fix
73
+ 2. Add unit tests for the bug scenario
74
+ 3. Add regression tests
75
+ 4. Update documentation if needed
76
+
77
+ Ensure test coverage for the fixed code path.
78
+ inputs:
79
+ plan: "fix_plan"
80
+ outputs:
81
+ - code_changes
82
+ - test_cases
83
+
84
+ - id: final-review
85
+ name: "Final Review"
86
+ action: review
87
+ agent: GovAgent
88
+ description: |
89
+ Final validation before merge:
90
+ - [ ] Fix addresses root cause
91
+ - [ ] No regression introduced
92
+ - [ ] Tests pass
93
+ - [ ] Code review approved
94
+ - [ ] Documentation updated
95
+ inputs:
96
+ changes: "code_changes"
97
+ tests: "test_cases"
98
+ outputs:
99
+ - approval_status