musubi-sdd 3.0.0 → 3.5.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.
Files changed (105) hide show
  1. package/bin/musubi-browser.js +0 -0
  2. package/bin/musubi-change.js +623 -10
  3. package/bin/musubi-convert.js +0 -0
  4. package/bin/musubi-gui.js +0 -0
  5. package/bin/musubi-orchestrate.js +456 -0
  6. package/bin/musubi-trace.js +393 -0
  7. package/bin/musubi-validate.js +0 -10
  8. package/package.json +3 -2
  9. package/src/analyzers/impact-analyzer.js +682 -0
  10. package/src/integrations/cicd.js +782 -0
  11. package/src/integrations/documentation.js +740 -0
  12. package/src/integrations/examples.js +789 -0
  13. package/src/integrations/index.js +23 -0
  14. package/src/integrations/platforms.js +929 -0
  15. package/src/managers/delta-spec.js +484 -0
  16. package/src/monitoring/incident-manager.js +890 -0
  17. package/src/monitoring/index.js +633 -0
  18. package/src/monitoring/observability.js +938 -0
  19. package/src/monitoring/release-manager.js +622 -0
  20. package/src/orchestration/index.js +168 -0
  21. package/src/orchestration/orchestration-engine.js +409 -0
  22. package/src/orchestration/pattern-registry.js +319 -0
  23. package/src/orchestration/patterns/auto.js +386 -0
  24. package/src/orchestration/patterns/group-chat.js +395 -0
  25. package/src/orchestration/patterns/human-in-loop.js +506 -0
  26. package/src/orchestration/patterns/nested.js +322 -0
  27. package/src/orchestration/patterns/sequential.js +278 -0
  28. package/src/orchestration/patterns/swarm.js +395 -0
  29. package/src/orchestration/workflow-orchestrator.js +738 -0
  30. package/src/reporters/coverage-report.js +452 -0
  31. package/src/reporters/traceability-matrix-report.js +684 -0
  32. package/src/steering/advanced-validation.js +812 -0
  33. package/src/steering/auto-updater.js +670 -0
  34. package/src/steering/index.js +119 -0
  35. package/src/steering/quality-metrics.js +650 -0
  36. package/src/steering/template-constraints.js +789 -0
  37. package/src/templates/agents/claude-code/skills/agent-assistant/SKILL.md +22 -0
  38. package/src/templates/agents/claude-code/skills/ai-ml-engineer/mlops-guide.md +350 -0
  39. package/src/templates/agents/claude-code/skills/ai-ml-engineer/model-card-template.md +246 -0
  40. package/src/templates/agents/claude-code/skills/api-designer/api-patterns.md +336 -0
  41. package/src/templates/agents/claude-code/skills/api-designer/openapi-template.md +376 -0
  42. package/src/templates/agents/claude-code/skills/bug-hunter/root-cause-analysis.md +177 -0
  43. package/src/templates/agents/claude-code/skills/change-impact-analyzer/dependency-graph-patterns.md +348 -0
  44. package/src/templates/agents/claude-code/skills/change-impact-analyzer/impact-analysis-template.md +246 -0
  45. package/src/templates/agents/claude-code/skills/cloud-architect/aws-patterns.md +239 -0
  46. package/src/templates/agents/claude-code/skills/cloud-architect/azure-patterns.md +300 -0
  47. package/src/templates/agents/claude-code/skills/cloud-architect/terraform-templates/azure-webapp.tf +337 -0
  48. package/src/templates/agents/claude-code/skills/code-reviewer/best-practices.md +155 -0
  49. package/src/templates/agents/claude-code/skills/code-reviewer/review-checklist.md +184 -0
  50. package/src/templates/agents/claude-code/skills/code-reviewer/review-standards.md +272 -0
  51. package/src/templates/agents/claude-code/skills/constitution-enforcer/constitutional-articles.md +449 -0
  52. package/src/templates/agents/claude-code/skills/constitution-enforcer/phase-minus-one-gates.md +375 -0
  53. package/src/templates/agents/claude-code/skills/database-administrator/backup-recovery.md +331 -0
  54. package/src/templates/agents/claude-code/skills/database-administrator/tuning-guide.md +314 -0
  55. package/src/templates/agents/claude-code/skills/database-schema-designer/schema-patterns.md +335 -0
  56. package/src/templates/agents/claude-code/skills/devops-engineer/ci-cd-templates.md +443 -0
  57. package/src/templates/agents/claude-code/skills/devops-engineer/pipeline-templates/github-actions.yml +311 -0
  58. package/src/templates/agents/claude-code/skills/devops-engineer/pipeline-templates/gitlab-ci.yml +255 -0
  59. package/src/templates/agents/claude-code/skills/issue-resolver/SKILL.md +21 -0
  60. package/src/templates/agents/claude-code/skills/orchestrator/SKILL.md +90 -28
  61. package/src/templates/agents/claude-code/skills/orchestrator/patterns.md +266 -0
  62. package/src/templates/agents/claude-code/skills/orchestrator/selection-matrix.md +185 -0
  63. package/src/templates/agents/claude-code/skills/performance-engineer/optimization-playbook.md +306 -0
  64. package/src/templates/agents/claude-code/skills/performance-optimizer/benchmark-template.md +272 -0
  65. package/src/templates/agents/claude-code/skills/performance-optimizer/optimization-patterns.md +273 -0
  66. package/src/templates/agents/claude-code/skills/project-manager/SKILL.md +32 -0
  67. package/src/templates/agents/claude-code/skills/project-manager/agile-ceremonies.md +283 -0
  68. package/src/templates/agents/claude-code/skills/project-manager/project-templates.md +345 -0
  69. package/src/templates/agents/claude-code/skills/quality-assurance/qa-plan-template.md +219 -0
  70. package/src/templates/agents/claude-code/skills/release-coordinator/feature-flag-guide.md +312 -0
  71. package/src/templates/agents/claude-code/skills/release-coordinator/release-plan-template.md +230 -0
  72. package/src/templates/agents/claude-code/skills/requirements-analyst/ears-format.md +259 -0
  73. package/src/templates/agents/claude-code/skills/requirements-analyst/validation-rules.md +359 -0
  74. package/src/templates/agents/claude-code/skills/security-auditor/audit-checklists.md +243 -0
  75. package/src/templates/agents/claude-code/skills/security-auditor/owasp-top-10.md +349 -0
  76. package/src/templates/agents/claude-code/skills/security-auditor/vulnerability-patterns.md +295 -0
  77. package/src/templates/agents/claude-code/skills/site-reliability-engineer/SKILL.md +27 -0
  78. package/src/templates/agents/claude-code/skills/site-reliability-engineer/incident-response-template.md +286 -0
  79. package/src/templates/agents/claude-code/skills/site-reliability-engineer/observability-patterns.md +359 -0
  80. package/src/templates/agents/claude-code/skills/site-reliability-engineer/slo-sli-guide.md +302 -0
  81. package/src/templates/agents/claude-code/skills/software-developer/solid-principles.md +348 -0
  82. package/src/templates/agents/claude-code/skills/software-developer/test-first-workflow.md +370 -0
  83. package/src/templates/agents/claude-code/skills/steering/SKILL.md +30 -0
  84. package/src/templates/agents/claude-code/skills/steering/auto-update-rules.md +328 -0
  85. package/src/templates/agents/claude-code/skills/system-architect/adr-template.md +295 -0
  86. package/src/templates/agents/claude-code/skills/system-architect/c4-model-guide.md +328 -0
  87. package/src/templates/agents/claude-code/skills/technical-writer/doc-templates/documentation-templates.md +436 -0
  88. package/src/templates/agents/claude-code/skills/test-engineer/SKILL.md +21 -0
  89. package/src/templates/agents/claude-code/skills/test-engineer/ears-test-mapping.md +444 -0
  90. package/src/templates/agents/claude-code/skills/test-engineer/test-types.md +425 -0
  91. package/src/templates/agents/claude-code/skills/traceability-auditor/coverage-matrix-template.md +131 -0
  92. package/src/templates/agents/claude-code/skills/traceability-auditor/gap-detection-rules.md +227 -0
  93. package/src/templates/agents/claude-code/skills/ui-ux-designer/SKILL.md +27 -0
  94. package/src/templates/agents/claude-code/skills/ui-ux-designer/accessibility-guidelines.md +318 -0
  95. package/src/templates/agents/claude-code/skills/ui-ux-designer/design-system-components.md +345 -0
  96. package/src/templates/agents/codex/AGENTS.md +36 -1
  97. package/src/templates/agents/cursor/AGENTS.md +36 -1
  98. package/src/templates/agents/gemini-cli/GEMINI.md +36 -1
  99. package/src/templates/agents/github-copilot/AGENTS.md +65 -1
  100. package/src/templates/agents/qwen-code/QWEN.md +36 -1
  101. package/src/templates/agents/windsurf/AGENTS.md +36 -1
  102. package/src/templates/shared/delta-spec-template.md +246 -0
  103. package/src/validators/constitutional-validator.js +494 -0
  104. package/src/validators/delta-format.js +474 -0
  105. package/src/validators/traceability-validator.js +561 -0
@@ -0,0 +1,328 @@
1
+ # C4 Model Guide
2
+
3
+ ## Overview
4
+
5
+ The C4 model is a set of hierarchical diagrams for visualizing software architecture at different levels of abstraction. MUSUBI SDD uses C4 for all architecture documentation.
6
+
7
+ ---
8
+
9
+ ## C4 Diagram Levels
10
+
11
+ ### Level 1: System Context Diagram
12
+
13
+ **Purpose**: Shows how the system fits into the world around it.
14
+
15
+ **Scope**: Single software system
16
+
17
+ **Primary Elements**:
18
+ - Your system (center)
19
+ - Users (people)
20
+ - External systems
21
+
22
+ **Audience**: Everyone - both technical and non-technical
23
+
24
+ ```mermaid
25
+ C4Context
26
+ title System Context Diagram - E-Commerce Platform
27
+
28
+ Person(customer, "Customer", "A user who purchases products")
29
+ Person(admin, "Admin", "System administrator")
30
+
31
+ System(ecommerce, "E-Commerce Platform", "Allows customers to browse and purchase products")
32
+
33
+ System_Ext(payment, "Payment Gateway", "Processes credit card payments")
34
+ System_Ext(shipping, "Shipping API", "Calculates shipping rates")
35
+ System_Ext(email, "Email Service", "Sends transactional emails")
36
+
37
+ Rel(customer, ecommerce, "Browses, purchases")
38
+ Rel(admin, ecommerce, "Manages products, orders")
39
+ Rel(ecommerce, payment, "Processes payments")
40
+ Rel(ecommerce, shipping, "Gets shipping rates")
41
+ Rel(ecommerce, email, "Sends emails")
42
+ ```
43
+
44
+ **Template**:
45
+ ```markdown
46
+ ## Level 1: System Context
47
+
48
+ ### System
49
+ - **Name**: [System Name]
50
+ - **Description**: [What the system does]
51
+
52
+ ### Users
53
+ | User | Description |
54
+ |------|-------------|
55
+ | [User Type] | [User description and goals] |
56
+
57
+ ### External Systems
58
+ | System | Description | Integration |
59
+ |--------|-------------|-------------|
60
+ | [External System] | [What it does] | [How we integrate] |
61
+ ```
62
+
63
+ ---
64
+
65
+ ### Level 2: Container Diagram
66
+
67
+ **Purpose**: Shows high-level technology choices and how containers communicate.
68
+
69
+ **Scope**: Single software system
70
+
71
+ **Primary Elements**:
72
+ - Containers (applications, data stores, etc.)
73
+ - Relationships between containers
74
+
75
+ **Audience**: Technical people
76
+
77
+ ```mermaid
78
+ C4Container
79
+ title Container Diagram - E-Commerce Platform
80
+
81
+ Person(customer, "Customer")
82
+
83
+ Container_Boundary(c1, "E-Commerce Platform") {
84
+ Container(web, "Web Application", "React", "Delivers the web frontend")
85
+ Container(api, "API Server", "Node.js/Express", "Provides REST API")
86
+ Container(worker, "Background Worker", "Node.js", "Processes async tasks")
87
+ ContainerDb(db, "Database", "PostgreSQL", "Stores users, products, orders")
88
+ ContainerDb(cache, "Cache", "Redis", "Caches sessions, products")
89
+ ContainerDb(queue, "Message Queue", "RabbitMQ", "Handles async messaging")
90
+ }
91
+
92
+ System_Ext(payment, "Payment Gateway")
93
+
94
+ Rel(customer, web, "Uses", "HTTPS")
95
+ Rel(web, api, "API calls", "HTTPS/JSON")
96
+ Rel(api, db, "Reads/Writes")
97
+ Rel(api, cache, "Reads/Writes")
98
+ Rel(api, queue, "Publishes")
99
+ Rel(worker, queue, "Consumes")
100
+ Rel(api, payment, "Processes payments", "HTTPS")
101
+ ```
102
+
103
+ **Template**:
104
+ ```markdown
105
+ ## Level 2: Container Diagram
106
+
107
+ ### Containers
108
+
109
+ | Container | Technology | Description |
110
+ |-----------|------------|-------------|
111
+ | Web App | React | Frontend SPA |
112
+ | API Server | Node.js/Express | REST API backend |
113
+ | Database | PostgreSQL | Persistent storage |
114
+ | Cache | Redis | Session and data cache |
115
+ | Queue | RabbitMQ | Async message processing |
116
+
117
+ ### Communication
118
+
119
+ | From | To | Protocol | Purpose |
120
+ |------|----|-----------| --------|
121
+ | Web App | API Server | HTTPS/REST | API calls |
122
+ | API Server | Database | TCP | Data persistence |
123
+ | API Server | Cache | TCP | Caching |
124
+ ```
125
+
126
+ ---
127
+
128
+ ### Level 3: Component Diagram
129
+
130
+ **Purpose**: Shows how a container is made up of components.
131
+
132
+ **Scope**: Single container
133
+
134
+ **Primary Elements**:
135
+ - Components (modules, services, controllers)
136
+ - Relationships between components
137
+
138
+ **Audience**: Developers
139
+
140
+ ```mermaid
141
+ C4Component
142
+ title Component Diagram - API Server
143
+
144
+ Container_Boundary(api, "API Server") {
145
+ Component(auth, "Auth Controller", "Express Router", "Handles authentication")
146
+ Component(user, "User Controller", "Express Router", "User CRUD operations")
147
+ Component(order, "Order Controller", "Express Router", "Order management")
148
+ Component(authService, "Auth Service", "TypeScript", "Authentication logic")
149
+ Component(userService, "User Service", "TypeScript", "User business logic")
150
+ Component(orderService, "Order Service", "TypeScript", "Order business logic")
151
+ Component(repo, "Repository Layer", "TypeScript", "Data access abstraction")
152
+ }
153
+
154
+ ContainerDb(db, "Database", "PostgreSQL")
155
+
156
+ Rel(auth, authService, "Uses")
157
+ Rel(user, userService, "Uses")
158
+ Rel(order, orderService, "Uses")
159
+ Rel(authService, repo, "Uses")
160
+ Rel(userService, repo, "Uses")
161
+ Rel(orderService, repo, "Uses")
162
+ Rel(repo, db, "Reads/Writes")
163
+ ```
164
+
165
+ **Template**:
166
+ ```markdown
167
+ ## Level 3: Component Diagram - [Container Name]
168
+
169
+ ### Components
170
+
171
+ | Component | Type | Responsibility |
172
+ |-----------|------|----------------|
173
+ | Auth Controller | Controller | Handle auth endpoints |
174
+ | Auth Service | Service | Authentication logic |
175
+ | User Repository | Repository | User data access |
176
+
177
+ ### Dependencies
178
+
179
+ | Component | Depends On | Purpose |
180
+ |-----------|------------|---------|
181
+ | Auth Controller | Auth Service | Business logic |
182
+ | Auth Service | User Repository | Data access |
183
+ ```
184
+
185
+ ---
186
+
187
+ ### Level 4: Code Diagram (Optional)
188
+
189
+ **Purpose**: Shows how a component is implemented.
190
+
191
+ **Scope**: Single component
192
+
193
+ **Primary Elements**:
194
+ - Classes, interfaces, modules
195
+ - Relationships (inheritance, composition)
196
+
197
+ **Audience**: Developers
198
+
199
+ **Note**: Often generated automatically from code.
200
+
201
+ ```mermaid
202
+ classDiagram
203
+ class AuthService {
204
+ -userRepository: UserRepository
205
+ -jwtService: JwtService
206
+ +login(email, password): AuthResult
207
+ +register(userData): User
208
+ +validateToken(token): boolean
209
+ +refreshToken(token): string
210
+ }
211
+
212
+ class UserRepository {
213
+ +findByEmail(email): User
214
+ +create(user): User
215
+ +update(id, data): User
216
+ }
217
+
218
+ class JwtService {
219
+ +sign(payload): string
220
+ +verify(token): Payload
221
+ }
222
+
223
+ AuthService --> UserRepository
224
+ AuthService --> JwtService
225
+ ```
226
+
227
+ ---
228
+
229
+ ## C4 Diagram Notation
230
+
231
+ ### Element Types
232
+
233
+ | Element | Notation | Description |
234
+ |---------|----------|-------------|
235
+ | Person | ![Person](stick figure) | A user of the system |
236
+ | System | ![System](box) | The system being described |
237
+ | External System | ![External](dashed box) | External dependency |
238
+ | Container | ![Container](box in system) | Deployable unit |
239
+ | Component | ![Component](box in container) | Code module |
240
+ | Database | ![Database](cylinder) | Data storage |
241
+
242
+ ### Relationship Arrows
243
+
244
+ ```
245
+ [Source] --"description"--> [Target]
246
+
247
+ Examples:
248
+ - Customer --> Web App : "Uses"
249
+ - API --> Database : "Reads/Writes"
250
+ - Service --> External API : "Calls via HTTPS"
251
+ ```
252
+
253
+ ---
254
+
255
+ ## Best Practices
256
+
257
+ ### Do
258
+
259
+ 1. **Start from Level 1**: Always create context diagram first
260
+ 2. **Use consistent notation**: Follow C4 conventions
261
+ 3. **Include descriptions**: Every element needs a description
262
+ 4. **Show technology choices**: Especially at container/component level
263
+ 5. **Keep it simple**: If diagram is too complex, zoom in
264
+
265
+ ### Don't
266
+
267
+ 1. **Don't mix levels**: Each diagram should be at one level
268
+ 2. **Don't show too much**: 10-15 elements maximum per diagram
269
+ 3. **Don't skip levels**: Create all relevant levels
270
+ 4. **Don't forget relationships**: Show how elements communicate
271
+ 5. **Don't use generic names**: Be specific (not "Database" but "User Database")
272
+
273
+ ---
274
+
275
+ ## MUSUBI C4 Template
276
+
277
+ ```markdown
278
+ # Architecture Design: [Feature Name]
279
+
280
+ ## Level 1: System Context
281
+
282
+ [Mermaid diagram]
283
+
284
+ ### Systems and Users
285
+ | Element | Type | Description |
286
+ |---------|------|-------------|
287
+ | | | |
288
+
289
+ ## Level 2: Container Diagram
290
+
291
+ [Mermaid diagram]
292
+
293
+ ### Containers
294
+ | Container | Technology | Purpose |
295
+ |-----------|------------|---------|
296
+ | | | |
297
+
298
+ ## Level 3: Component Diagram - [Container]
299
+
300
+ [Mermaid diagram]
301
+
302
+ ### Components
303
+ | Component | Type | Responsibility |
304
+ |-----------|------|----------------|
305
+ | | | |
306
+
307
+ ## Technology Decisions
308
+
309
+ See ADR-XXX for rationale.
310
+
311
+ ## Requirements Traceability
312
+
313
+ | REQ ID | Addressed By |
314
+ |--------|--------------|
315
+ | REQ-001 | Auth Service |
316
+ ```
317
+
318
+ ---
319
+
320
+ ## Tools for C4 Diagrams
321
+
322
+ | Tool | Format | Notes |
323
+ |------|--------|-------|
324
+ | Mermaid | Markdown | Recommended - works in GitHub |
325
+ | PlantUML | Text | Rich features |
326
+ | Structurizr | DSL | Official C4 tooling |
327
+ | Draw.io | Visual | Easy for non-technical |
328
+ | Lucidchart | Visual | Collaboration features |