siesa-agents 2.1.41 β 2.1.43
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/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +105 -21
- package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +16 -0
- package/bmad/bmm/workflows/3-solutioning/create-architecture/data/company-standards/architecture-patterns.md +5 -5
- package/bmad/bmm/workflows/3-solutioning/create-architecture/data/company-standards/backend-standards.md +1 -1
- package/bmad/bmm/workflows/3-solutioning/create-architecture/data/company-standards/technology-stack.md +3 -3
- package/package.json +1 -1
package/bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md
CHANGED
|
@@ -42,19 +42,89 @@ This step will generate content and present choices:
|
|
|
42
42
|
- User journeys from step 10 identify component needs
|
|
43
43
|
- Focus on defining custom components and implementation strategy
|
|
44
44
|
|
|
45
|
+
## π΄ CRITICAL: SIESA-UI-KIT MANDATORY CHECK
|
|
46
|
+
|
|
47
|
+
**BEFORE defining ANY component strategy, you MUST:**
|
|
48
|
+
|
|
49
|
+
1. **Load Company Standards** from `{company_standards_path}/frontend-standards.md`
|
|
50
|
+
2. **Check siesa-ui-kit FIRST** for every component need identified
|
|
51
|
+
3. **Follow the Component Decision Protocol** below
|
|
52
|
+
|
|
53
|
+
### Component Decision Protocol
|
|
54
|
+
|
|
55
|
+
For EVERY component needed in the UX specification:
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
βββββββββββββββββββββββββββββββββββββββββββ
|
|
59
|
+
β Component Needed: [Component Name] β
|
|
60
|
+
βββββββββββββββββββββββββββββββββββββββββββ
|
|
61
|
+
β
|
|
62
|
+
βΌ
|
|
63
|
+
βββββββββββββββββββββββββββββββββββββββββββ
|
|
64
|
+
β Is it in siesa-ui-kit? β
|
|
65
|
+
βββββββββββββββββββββββββββββββββββββββββββ
|
|
66
|
+
β β
|
|
67
|
+
YES NO
|
|
68
|
+
β β
|
|
69
|
+
βΌ βΌ
|
|
70
|
+
βββββββββββββββββββ βββββββββββββββββββββββββββ
|
|
71
|
+
β USE siesa-ui-kit β β ASK USER: β
|
|
72
|
+
β component AS-IS β β [1] Use shadcn directly β
|
|
73
|
+
βββββββββββββββββββ β [2] Create custom for β
|
|
74
|
+
β siesa-ui-kit (MR) β
|
|
75
|
+
βββββββββββββββββββββββββββ
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Why This Matters
|
|
79
|
+
|
|
80
|
+
| Rule | Impact |
|
|
81
|
+
|------|--------|
|
|
82
|
+
| **siesa-ui-kit first** | 90% fewer bugs vs manual creation |
|
|
83
|
+
| **Consistency** | Unified experience across all Siesa products |
|
|
84
|
+
| **Maintenance** | Platform team maintains shared components |
|
|
85
|
+
| **Compliance** | Meets company visual and accessibility standards |
|
|
86
|
+
|
|
87
|
+
### UI Text Language Rule
|
|
88
|
+
|
|
89
|
+
π΄ **MANDATORY**: All user-facing text in UX specifications MUST be in Spanish.
|
|
90
|
+
|
|
91
|
+
**β
CORRECT:**
|
|
92
|
+
- Buttons: "Guardar", "Cancelar", "Enviar"
|
|
93
|
+
- Labels: "Nombre de usuario", "ContraseΓ±a"
|
|
94
|
+
- Messages: "Datos guardados correctamente"
|
|
95
|
+
|
|
96
|
+
**β INCORRECT:**
|
|
97
|
+
- Mixed: "Save cambios", "Failed al guardar"
|
|
98
|
+
- English: "Save", "Cancel", "Submit"
|
|
99
|
+
|
|
45
100
|
## YOUR TASK:
|
|
46
101
|
|
|
47
102
|
Define component library strategy and design custom components not covered by the design system.
|
|
48
103
|
|
|
49
104
|
## COMPONENT STRATEGY SEQUENCE:
|
|
50
105
|
|
|
51
|
-
### 1.
|
|
106
|
+
### 1. Load siesa-ui-kit and Company Standards
|
|
107
|
+
|
|
108
|
+
π΄ **FIRST**: Before any analysis, load:
|
|
109
|
+
- `{company_standards_path}/frontend-standards.md`
|
|
110
|
+
- Check if siesa-ui-kit documentation exists in project
|
|
111
|
+
|
|
112
|
+
"Before we analyze components, let me load the company standards and siesa-ui-kit to ensure we follow Siesa's component guidelines."
|
|
52
113
|
|
|
53
|
-
|
|
54
|
-
"Based on our chosen design system [design system from step 6], let's identify what components are already available and what we need to create custom.
|
|
114
|
+
### 2. Analyze Component Coverage (siesa-ui-kit FIRST)
|
|
55
115
|
|
|
56
|
-
|
|
57
|
-
|
|
116
|
+
Review components in this priority order:
|
|
117
|
+
1. **siesa-ui-kit** (company shared components) - USE FIRST
|
|
118
|
+
2. **Design System** from step 6 (shadcn/Radix) - fallback
|
|
119
|
+
3. **Custom components** - only if not in above
|
|
120
|
+
|
|
121
|
+
"Based on siesa-ui-kit and our chosen design system, let's identify what components are already available.
|
|
122
|
+
|
|
123
|
+
**π’ Available from siesa-ui-kit:**
|
|
124
|
+
[List components from siesa-ui-kit that match our needs - THESE MUST BE USED]
|
|
125
|
+
|
|
126
|
+
**π‘ Available from Design System (shadcn/Radix):**
|
|
127
|
+
[List of components available but NOT in siesa-ui-kit]
|
|
58
128
|
|
|
59
129
|
**Components Needed for {{project_name}}:**
|
|
60
130
|
Looking at our user journeys and design direction, we need:
|
|
@@ -63,12 +133,13 @@ Looking at our user journeys and design direction, we need:
|
|
|
63
133
|
- [Component need 2 from design requirements]
|
|
64
134
|
- [Component need 3 from core experience]
|
|
65
135
|
|
|
66
|
-
**Gap Analysis:**
|
|
136
|
+
**Gap Analysis (Components NOT in siesa-ui-kit or Design System):**
|
|
67
137
|
|
|
68
|
-
|
|
69
|
-
- [Gap
|
|
138
|
+
For each gap, we need to ask:
|
|
139
|
+
- [Gap 1] β [1] Use shadcn directly OR [2] Create for siesa-ui-kit?
|
|
140
|
+
- [Gap 2] β [1] Use shadcn directly OR [2] Create for siesa-ui-kit?"
|
|
70
141
|
|
|
71
|
-
###
|
|
142
|
+
### 3. Design Custom Components
|
|
72
143
|
|
|
73
144
|
For each custom component needed, design thoroughly:
|
|
74
145
|
|
|
@@ -84,7 +155,7 @@ For each custom component needed, design thoroughly:
|
|
|
84
155
|
|
|
85
156
|
Let's walk through each custom component systematically."
|
|
86
157
|
|
|
87
|
-
###
|
|
158
|
+
### 4. Document Component Specifications
|
|
88
159
|
|
|
89
160
|
Create detailed specifications for each component:
|
|
90
161
|
|
|
@@ -103,7 +174,7 @@ Create detailed specifications for each component:
|
|
|
103
174
|
**Interaction Behavior:** [How users interact]
|
|
104
175
|
```
|
|
105
176
|
|
|
106
|
-
###
|
|
177
|
+
### 5. Define Component Strategy
|
|
107
178
|
|
|
108
179
|
Establish overall component library approach:
|
|
109
180
|
"**Component Strategy:**
|
|
@@ -125,7 +196,7 @@ Establish overall component library approach:
|
|
|
125
196
|
- Follow accessibility best practices
|
|
126
197
|
- Create reusable patterns for common use cases"
|
|
127
198
|
|
|
128
|
-
###
|
|
199
|
+
### 6. Plan Implementation Roadmap
|
|
129
200
|
|
|
130
201
|
Define how and when to build components:
|
|
131
202
|
"**Implementation Roadmap:**
|
|
@@ -147,7 +218,7 @@ Define how and when to build components:
|
|
|
147
218
|
|
|
148
219
|
This roadmap helps prioritize development based on user journey criticality."
|
|
149
220
|
|
|
150
|
-
###
|
|
221
|
+
### 7. Generate Component Strategy Content
|
|
151
222
|
|
|
152
223
|
Prepare the content to append to the document:
|
|
153
224
|
|
|
@@ -158,24 +229,30 @@ When saving to document, append these Level 2 and Level 3 sections:
|
|
|
158
229
|
```markdown
|
|
159
230
|
## Component Strategy
|
|
160
231
|
|
|
161
|
-
###
|
|
232
|
+
### siesa-ui-kit Components (Priority 1)
|
|
233
|
+
|
|
234
|
+
[List all components from siesa-ui-kit that will be used - THESE ARE MANDATORY]
|
|
235
|
+
|
|
236
|
+
### Design System Components (Priority 2)
|
|
162
237
|
|
|
163
|
-
[
|
|
238
|
+
[Components from shadcn/Radix not covered by siesa-ui-kit]
|
|
164
239
|
|
|
165
|
-
### Custom Components
|
|
240
|
+
### Custom Components (Priority 3)
|
|
166
241
|
|
|
167
|
-
[Custom component specifications
|
|
242
|
+
[Custom component specifications - only for gaps not covered above]
|
|
243
|
+
[Include decision: shadcn direct OR create for siesa-ui-kit MR]
|
|
168
244
|
|
|
169
245
|
### Component Implementation Strategy
|
|
170
246
|
|
|
171
247
|
[Component implementation strategy based on conversation]
|
|
248
|
+
[Include UI text language: Spanish for all user-facing text]
|
|
172
249
|
|
|
173
250
|
### Implementation Roadmap
|
|
174
251
|
|
|
175
252
|
[Implementation roadmap based on conversation]
|
|
176
253
|
```
|
|
177
254
|
|
|
178
|
-
###
|
|
255
|
+
### 8. Present Content and Menu
|
|
179
256
|
|
|
180
257
|
Show the generated component strategy content and present choices:
|
|
181
258
|
"I've defined the component strategy for {{project_name}}. This balances using proven design system components with custom components for your unique needs.
|
|
@@ -189,7 +266,7 @@ Show the generated component strategy content and present choices:
|
|
|
189
266
|
[P] Party Mode - Bring technical perspectives on component design
|
|
190
267
|
[C] Continue - Save this to the document and move to UX patterns
|
|
191
268
|
|
|
192
|
-
###
|
|
269
|
+
### 9. Handle Menu Selection
|
|
193
270
|
|
|
194
271
|
#### If 'A' (Advanced Elicitation):
|
|
195
272
|
|
|
@@ -219,9 +296,12 @@ When user selects 'C', append the content directly to the document using the str
|
|
|
219
296
|
|
|
220
297
|
## SUCCESS METRICS:
|
|
221
298
|
|
|
222
|
-
β
|
|
299
|
+
β
**siesa-ui-kit checked FIRST** before any component decisions
|
|
300
|
+
β
Company standards loaded from `{company_standards_path}`
|
|
301
|
+
β
Design system coverage properly analyzed (siesa-ui-kit β shadcn β custom)
|
|
223
302
|
β
All custom components thoroughly specified
|
|
224
|
-
β
Component strategy clearly defined
|
|
303
|
+
β
Component strategy clearly defined with priority hierarchy
|
|
304
|
+
β
**All UI text in Spanish** for user-facing elements
|
|
225
305
|
β
Implementation roadmap prioritized by user need
|
|
226
306
|
β
Accessibility considered for all components
|
|
227
307
|
β
A/P/C menu presented and handled correctly
|
|
@@ -229,6 +309,10 @@ When user selects 'C', append the content directly to the document using the str
|
|
|
229
309
|
|
|
230
310
|
## FAILURE MODES:
|
|
231
311
|
|
|
312
|
+
β **CRITICAL**: NOT checking siesa-ui-kit FIRST - creates components that already exist
|
|
313
|
+
β **CRITICAL**: Creating custom components without asking user (shadcn vs siesa-ui-kit MR)
|
|
314
|
+
β **CRITICAL**: UI text in English instead of Spanish
|
|
315
|
+
β Not loading company standards from `{company_standards_path}`
|
|
232
316
|
β Not analyzing design system coverage properly
|
|
233
317
|
β Custom components not thoroughly specified
|
|
234
318
|
β Missing accessibility considerations
|
|
@@ -36,6 +36,22 @@ Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
|
|
|
36
36
|
- `installed_path` = `{project-root}/_bmad/bmm/workflows/2-plan-workflows/create-ux-design`
|
|
37
37
|
- `template_path` = `{installed_path}/ux-design-template.md`
|
|
38
38
|
- `default_output_file` = `{planning_artifacts}/ux-design-specification.md`
|
|
39
|
+
- `company_standards_path` = `{project-root}/_bmad/bmm/workflows/3-solutioning/create-architecture/data/company-standards`
|
|
40
|
+
|
|
41
|
+
### Company Standards Integration
|
|
42
|
+
|
|
43
|
+
π΄ **CRITICAL**: Load company standards for UX specifications:
|
|
44
|
+
|
|
45
|
+
If `{company_standards_path}` exists, load these files:
|
|
46
|
+
- `frontend-standards.md` - Contains **siesa-ui-kit** rules and component strategy
|
|
47
|
+
- `technical-preferences-ux.md` - UX/UI preferences and patterns
|
|
48
|
+
|
|
49
|
+
**Priority Rules from Company Standards:**
|
|
50
|
+
| Priority | Rule | Why Critical |
|
|
51
|
+
|----------|------|--------------|
|
|
52
|
+
| π΄ P0 | **siesa-ui-kit obligatorio** | Must check siesa-ui-kit before creating ANY component |
|
|
53
|
+
| π΄ P0 | **UI text in Spanish** | All user-facing text MUST be in Spanish |
|
|
54
|
+
| π‘ P1 | Design system tokens | Use company-defined colors, spacing, typography |
|
|
39
55
|
|
|
40
56
|
## EXECUTION
|
|
41
57
|
|
|
@@ -120,7 +120,7 @@ Use MCP to install Shadcn components instead of creating manually.
|
|
|
120
120
|
|
|
121
121
|
### Technology Stack
|
|
122
122
|
- **.NET 10** with **C# Minimal API**
|
|
123
|
-
- **Entity Framework Core** with **PostgreSQL
|
|
123
|
+
- **Entity Framework Core** with **PostgreSQL 18+**
|
|
124
124
|
- **UUID (Guid)** primary keys mandatory
|
|
125
125
|
- **linq2db**, **DynamicLinq**, **LinqKit** for advanced queries
|
|
126
126
|
- **FluentValidation** for validation
|
|
@@ -300,7 +300,7 @@ public class InventoryServiceClient
|
|
|
300
300
|
### Database per Microservice Pattern
|
|
301
301
|
|
|
302
302
|
**Key Principles:**
|
|
303
|
-
- Each microservice has its own PostgreSQL database
|
|
303
|
+
- Each microservice has its own PostgreSQL database (v18+)
|
|
304
304
|
- No direct database access between services
|
|
305
305
|
- Data consistency via eventual consistency and sagas
|
|
306
306
|
- Each database uses UUID (Guid) primary keys
|
|
@@ -359,7 +359,7 @@ public class QuoteConfiguration : IEntityTypeConfiguration<QuoteEntity>
|
|
|
359
359
|
#### Test-Driven Development
|
|
360
360
|
- Write xUnit tests before or alongside implementation
|
|
361
361
|
- Use EF Core InMemory for fast unit tests
|
|
362
|
-
- Use PostgreSQL Test Containers for integration tests
|
|
362
|
+
- Use PostgreSQL 18+ Test Containers for integration tests
|
|
363
363
|
- Mock external dependencies
|
|
364
364
|
|
|
365
365
|
#### FluentValidation Usage
|
|
@@ -398,10 +398,10 @@ app.MapScalarApiReference(); // NOT app.UseSwagger()
|
|
|
398
398
|
### Backend
|
|
399
399
|
- **Framework**: .NET 10 with C# Minimal API
|
|
400
400
|
- **Architecture**: Clean Architecture + DDD + Microservices
|
|
401
|
-
- **Database**: PostgreSQL (one per microservice)
|
|
401
|
+
- **Database**: PostgreSQL 18+ (one per microservice)
|
|
402
402
|
- **ORM**: Entity Framework Core + linq2db + DynamicLinq + LinqKit
|
|
403
403
|
- **Validation**: FluentValidation
|
|
404
|
-
- **Testing**: xUnit + EF Core InMemory + PostgreSQL Test Containers
|
|
404
|
+
- **Testing**: xUnit + EF Core InMemory + PostgreSQL 18+ Test Containers
|
|
405
405
|
- **Documentation**: Scalar (NO Swagger)
|
|
406
406
|
- **Primary Keys**: UUID (Guid) mandatory
|
|
407
407
|
- **PDF Generation**: QuestPDF
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
### Framework Standards
|
|
15
15
|
- **Default Framework**: .NET 10 with C# Minimal API
|
|
16
|
-
- **Database**: PostgreSQL with Entity Framework Core 10 (mandatory)
|
|
16
|
+
- **Database**: PostgreSQL 18+ with Entity Framework Core 10 (mandatory)
|
|
17
17
|
- **ORM Extensions**:
|
|
18
18
|
- **linq2db**: For highly optimized complex queries requiring maximum performance
|
|
19
19
|
- **DynamicLinq**: For runtime dynamic filters from user input or configurable scenarios
|
|
@@ -176,7 +176,7 @@ Use MCP to install Shadcn components instead of creating manually
|
|
|
176
176
|
- **REST API** - Primary communication protocol
|
|
177
177
|
|
|
178
178
|
### Database & Data Management
|
|
179
|
-
- **PostgreSQL
|
|
179
|
+
- **PostgreSQL 18+** - Primary relational database (mandatory)
|
|
180
180
|
- **Database per Microservice** - Each microservice has its own isolated database
|
|
181
181
|
- **Primary Keys UUID** - Universal unique identifiers for all entities
|
|
182
182
|
- **EF Core 10 Migrations** - Entity Framework migrations package for schema version control
|
|
@@ -184,7 +184,7 @@ Use MCP to install Shadcn components instead of creating manually
|
|
|
184
184
|
### Testing
|
|
185
185
|
- **xUnit** - Unit and integration testing framework
|
|
186
186
|
- **EF Core 10 InMemory** - In-memory database for fast tests
|
|
187
|
-
- **PostgreSQL Test Containers** - PostgreSQL containers for real integration tests
|
|
187
|
+
- **PostgreSQL 18+ Test Containers** - PostgreSQL containers for real integration tests
|
|
188
188
|
|
|
189
189
|
### Additional Libraries
|
|
190
190
|
- **QuestPDF** - PDF document generation
|
|
@@ -218,7 +218,7 @@ Business logic drives architecture decisions
|
|
|
218
218
|
|
|
219
219
|
### Microservices Isolation
|
|
220
220
|
- Each service is independent
|
|
221
|
-
- Own PostgreSQL database per service
|
|
221
|
+
- Own PostgreSQL 18+ database per service
|
|
222
222
|
- No shared databases between services
|
|
223
223
|
|
|
224
224
|
### UUID Primary Keys
|