@tamyla/clodo-framework 3.1.21 → 3.1.22

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 (169) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +53 -0
  3. package/dist/bin/clodo-service.js +47 -15
  4. package/dist/bin/commands/deploy.js +115 -83
  5. package/dist/bin/commands/helpers/deployment-ui.js +138 -0
  6. package/dist/bin/commands/helpers/deployment-verification.js +251 -0
  7. package/dist/bin/commands/helpers/error-recovery.js +80 -0
  8. package/dist/bin/commands/helpers/resource-detection.js +113 -0
  9. package/dist/bin/commands/validate.js +1 -1
  10. package/dist/bin/security/security-cli.js +1 -1
  11. package/dist/bin/shared/cache/configuration-cache.js +82 -0
  12. package/dist/bin/shared/cloudflare/domain-manager.js +1 -1
  13. package/dist/bin/shared/cloudflare/index.js +1 -1
  14. package/dist/bin/shared/cloudflare/ops.js +6 -4
  15. package/dist/bin/shared/config/ConfigurationManager.js +23 -1
  16. package/dist/bin/shared/config/command-config-manager.js +19 -3
  17. package/dist/bin/shared/config/index.js +1 -1
  18. package/dist/bin/shared/deployment/credential-collector.js +30 -7
  19. package/dist/bin/shared/deployment/index.js +2 -2
  20. package/dist/bin/shared/deployment/rollback-manager.js +4 -520
  21. package/dist/bin/shared/deployment/utilities/d1-error-recovery.js +177 -0
  22. package/dist/bin/shared/deployment/validator.js +40 -10
  23. package/dist/bin/shared/deployment/workflows/deployment-summary.js +214 -0
  24. package/dist/bin/shared/deployment/workflows/interactive-confirmation.js +188 -0
  25. package/dist/bin/shared/deployment/workflows/interactive-database-workflow.js +234 -0
  26. package/dist/bin/shared/deployment/workflows/interactive-domain-info-gatherer.js +240 -0
  27. package/dist/bin/shared/deployment/workflows/interactive-secret-workflow.js +228 -0
  28. package/dist/bin/shared/deployment/workflows/interactive-testing-workflow.js +235 -0
  29. package/dist/bin/shared/deployment/workflows/interactive-validation.js +218 -0
  30. package/dist/bin/shared/error-handling/error-classifier.js +46 -0
  31. package/dist/bin/shared/monitoring/health-checker.js +129 -1
  32. package/dist/bin/shared/monitoring/memory-manager.js +17 -6
  33. package/dist/bin/shared/routing/domain-router.js +1 -1
  34. package/dist/bin/shared/utils/deployment-validator.js +97 -0
  35. package/dist/bin/shared/utils/formatters.js +10 -0
  36. package/dist/bin/shared/utils/index.js +13 -1
  37. package/dist/bin/shared/utils/interactive-prompts.js +34 -18
  38. package/dist/bin/shared/utils/progress-manager.js +2 -2
  39. package/dist/bin/shared/utils/progress-spinner.js +53 -0
  40. package/dist/bin/shared/utils/sensitive-redactor.js +91 -0
  41. package/dist/bin/shared/validation/ValidationRegistry.js +1 -1
  42. package/dist/security/index.js +1 -1
  43. package/dist/security/patterns/insecure-patterns.js +1 -1
  44. package/dist/utils/constants.js +102 -0
  45. package/dist/utils/deployment/wrangler-config-manager.js +215 -48
  46. package/dist/utils/framework-config.js +2 -2
  47. package/dist/utils/interactive-prompts.js +10 -59
  48. package/package.json +16 -8
  49. package/dist/bin/clodo-service-old.js +0 -868
  50. package/dist/bin/clodo-service-test.js +0 -10
  51. package/dist/bin/commands/assess.js +0 -91
  52. package/dist/bin/commands/create.js +0 -77
  53. package/dist/bin/commands/diagnose.js +0 -83
  54. package/dist/bin/commands/helpers.js +0 -138
  55. package/dist/bin/commands/update.js +0 -75
  56. package/dist/bin/database/deployment-db-manager.js +0 -423
  57. package/dist/bin/database/enterprise-db-manager.js +0 -457
  58. package/dist/bin/database/wrangler-d1-manager.js +0 -685
  59. package/dist/bin/deployment/enterprise-deploy.js +0 -877
  60. package/dist/bin/deployment/master-deploy.js +0 -1376
  61. package/dist/bin/deployment/modular-enterprise-deploy.js +0 -466
  62. package/dist/bin/deployment/modules/DeploymentConfiguration.js +0 -395
  63. package/dist/bin/deployment/modules/DeploymentOrchestrator.js +0 -492
  64. package/dist/bin/deployment/modules/EnvironmentManager.js +0 -517
  65. package/dist/bin/deployment/modules/MonitoringIntegration.js +0 -560
  66. package/dist/bin/deployment/modules/ValidationManager.js +0 -342
  67. package/dist/bin/deployment/orchestration/BaseDeploymentOrchestrator.js +0 -426
  68. package/dist/bin/deployment/orchestration/EnterpriseOrchestrator.js +0 -401
  69. package/dist/bin/deployment/orchestration/PortfolioOrchestrator.js +0 -273
  70. package/dist/bin/deployment/orchestration/SingleServiceOrchestrator.js +0 -231
  71. package/dist/bin/deployment/orchestration/UnifiedDeploymentOrchestrator.js +0 -662
  72. package/dist/bin/deployment/test-interactive-utils.js +0 -66
  73. package/dist/bin/portfolio/portfolio-manager.js +0 -487
  74. package/dist/bin/service-management/create-service.js +0 -122
  75. package/dist/bin/service-management/init-service.js +0 -79
  76. package/dist/config/customers.js +0 -623
  77. package/dist/config/domains.js +0 -186
  78. package/dist/config/index.js +0 -6
  79. package/dist/database/database-orchestrator.js +0 -795
  80. package/dist/database/index.js +0 -4
  81. package/dist/deployment/index.js +0 -11
  82. package/dist/deployment/orchestration/BaseDeploymentOrchestrator.js +0 -426
  83. package/dist/deployment/orchestration/EnterpriseOrchestrator.js +0 -401
  84. package/dist/deployment/orchestration/PortfolioOrchestrator.js +0 -273
  85. package/dist/deployment/orchestration/SingleServiceOrchestrator.js +0 -231
  86. package/dist/deployment/orchestration/UnifiedDeploymentOrchestrator.js +0 -662
  87. package/dist/deployment/orchestration/index.js +0 -17
  88. package/dist/deployment/rollback-manager.js +0 -36
  89. package/dist/deployment/wrangler-deployer.js +0 -640
  90. package/dist/handlers/GenericRouteHandler.js +0 -532
  91. package/dist/migration/MigrationAdapters.js +0 -562
  92. package/dist/modules/ModuleManager.js +0 -668
  93. package/dist/modules/security.js +0 -96
  94. package/dist/orchestration/cross-domain-coordinator.js +0 -1083
  95. package/dist/orchestration/index.js +0 -5
  96. package/dist/orchestration/modules/DeploymentCoordinator.js +0 -368
  97. package/dist/orchestration/modules/DomainResolver.js +0 -198
  98. package/dist/orchestration/modules/StateManager.js +0 -332
  99. package/dist/orchestration/multi-domain-orchestrator.js +0 -724
  100. package/dist/routing/EnhancedRouter.js +0 -158
  101. package/dist/schema/SchemaManager.js +0 -778
  102. package/dist/service-management/ConfirmationEngine.js +0 -412
  103. package/dist/service-management/ErrorTracker.js +0 -299
  104. package/dist/service-management/GenerationEngine.js +0 -447
  105. package/dist/service-management/InputCollector.js +0 -619
  106. package/dist/service-management/ServiceCreator.js +0 -265
  107. package/dist/service-management/ServiceInitializer.js +0 -453
  108. package/dist/service-management/ServiceOrchestrator.js +0 -633
  109. package/dist/service-management/generators/BaseGenerator.js +0 -233
  110. package/dist/service-management/generators/GeneratorRegistry.js +0 -254
  111. package/dist/service-management/generators/cicd/CiWorkflowGenerator.js +0 -87
  112. package/dist/service-management/generators/cicd/DeployWorkflowGenerator.js +0 -106
  113. package/dist/service-management/generators/code/ServiceHandlersGenerator.js +0 -235
  114. package/dist/service-management/generators/code/ServiceMiddlewareGenerator.js +0 -116
  115. package/dist/service-management/generators/code/ServiceUtilsGenerator.js +0 -246
  116. package/dist/service-management/generators/code/WorkerIndexGenerator.js +0 -143
  117. package/dist/service-management/generators/config/DevelopmentEnvGenerator.js +0 -101
  118. package/dist/service-management/generators/config/DomainsConfigGenerator.js +0 -175
  119. package/dist/service-management/generators/config/EnvExampleGenerator.js +0 -178
  120. package/dist/service-management/generators/config/ProductionEnvGenerator.js +0 -97
  121. package/dist/service-management/generators/config/StagingEnvGenerator.js +0 -97
  122. package/dist/service-management/generators/config/WranglerTomlGenerator.js +0 -238
  123. package/dist/service-management/generators/core/PackageJsonGenerator.js +0 -243
  124. package/dist/service-management/generators/core/SiteConfigGenerator.js +0 -115
  125. package/dist/service-management/generators/documentation/ApiDocsGenerator.js +0 -331
  126. package/dist/service-management/generators/documentation/ConfigurationDocsGenerator.js +0 -294
  127. package/dist/service-management/generators/documentation/DeploymentDocsGenerator.js +0 -244
  128. package/dist/service-management/generators/documentation/ReadmeGenerator.js +0 -196
  129. package/dist/service-management/generators/schemas/ServiceSchemaGenerator.js +0 -190
  130. package/dist/service-management/generators/scripts/DeployScriptGenerator.js +0 -123
  131. package/dist/service-management/generators/scripts/HealthCheckScriptGenerator.js +0 -101
  132. package/dist/service-management/generators/scripts/SetupScriptGenerator.js +0 -88
  133. package/dist/service-management/generators/service-types/StaticSiteGenerator.js +0 -342
  134. package/dist/service-management/generators/testing/EslintConfigGenerator.js +0 -85
  135. package/dist/service-management/generators/testing/IntegrationTestsGenerator.js +0 -237
  136. package/dist/service-management/generators/testing/JestConfigGenerator.js +0 -72
  137. package/dist/service-management/generators/testing/UnitTestsGenerator.js +0 -277
  138. package/dist/service-management/generators/tooling/DockerComposeGenerator.js +0 -71
  139. package/dist/service-management/generators/tooling/GitignoreGenerator.js +0 -143
  140. package/dist/service-management/generators/utils/FileWriter.js +0 -179
  141. package/dist/service-management/generators/utils/PathResolver.js +0 -157
  142. package/dist/service-management/generators/utils/ServiceManifestGenerator.js +0 -111
  143. package/dist/service-management/generators/utils/TemplateEngine.js +0 -185
  144. package/dist/service-management/generators/utils/index.js +0 -18
  145. package/dist/service-management/handlers/ConfirmationHandler.js +0 -71
  146. package/dist/service-management/handlers/GenerationHandler.js +0 -80
  147. package/dist/service-management/handlers/InputHandler.js +0 -59
  148. package/dist/service-management/handlers/ValidationHandler.js +0 -203
  149. package/dist/service-management/index.js +0 -14
  150. package/dist/service-management/routing/DomainRouteMapper.js +0 -311
  151. package/dist/service-management/routing/RouteGenerator.js +0 -266
  152. package/dist/service-management/routing/WranglerRoutesBuilder.js +0 -273
  153. package/dist/service-management/routing/index.js +0 -14
  154. package/dist/service-management/services/DirectoryStructureService.js +0 -56
  155. package/dist/service-management/services/GenerationCoordinator.js +0 -208
  156. package/dist/service-management/services/GeneratorRegistry.js +0 -174
  157. package/dist/services/GenericDataService.js +0 -501
  158. package/dist/ui-structures/concepts/second-order-acquisition-strategy.md +0 -286
  159. package/dist/ui-structures/concepts/service-lifecycle-management.md +0 -150
  160. package/dist/ui-structures/concepts/service-manifest-guide.md +0 -309
  161. package/dist/ui-structures/concepts/three-tier-categorization-strategy.md +0 -231
  162. package/dist/ui-structures/creation/automated-generation-ui.json +0 -246
  163. package/dist/ui-structures/creation/core-inputs-ui.json +0 -217
  164. package/dist/ui-structures/creation/smart-confirmable-ui.json +0 -451
  165. package/dist/ui-structures/reference/absolutely-required-inputs.json +0 -315
  166. package/dist/ui-structures/reference/service-manifest-template.json +0 -342
  167. package/dist/version/VersionDetector.js +0 -723
  168. package/dist/worker/index.js +0 -4
  169. package/dist/worker/integration.js +0 -351
@@ -1,451 +0,0 @@
1
- {
2
- "template": {
3
- "name": "smart-confirmable-ui",
4
- "description": "UI template for presenting auto-generated defaults that users can confirm or customize",
5
- "version": "1.0.0",
6
- "category": "user-confirmable",
7
- "inputCount": 15,
8
- "estimatedTime": "3-5 minutes",
9
- "uiType": "confirmation-with-editing"
10
- },
11
- "collectionStrategy": {
12
- "phase": 2,
13
- "title": "Review & Customize Generated Settings",
14
- "description": "We've generated smart defaults based on your core inputs. Review and customize as needed.",
15
- "progressIndicator": "Step 2 of 3: Review & Customize",
16
- "validationMode": "flexible",
17
- "allowBackNavigation": true,
18
- "allowSkip": true,
19
- "batchOperations": {
20
- "acceptAll": true,
21
- "acceptCategory": true,
22
- "resetToDefaults": true
23
- }
24
- },
25
- "categories": [
26
- {
27
- "id": "branding",
28
- "title": "Branding & Identity",
29
- "description": "Service names, descriptions, and authorship",
30
- "inputs": ["display-name", "description", "version", "author"]
31
- },
32
- {
33
- "id": "networking",
34
- "title": "Networking & URLs",
35
- "description": "API endpoints and service URLs",
36
- "inputs": ["production-url", "staging-url", "development-url"]
37
- },
38
- {
39
- "id": "structure",
40
- "title": "Project Structure",
41
- "description": "Directories, databases, and resource naming",
42
- "inputs": ["service-directory", "database-name", "worker-name"]
43
- },
44
- {
45
- "id": "configuration",
46
- "title": "Configuration & Behavior",
47
- "description": "Logging, security, and environment settings",
48
- "inputs": ["log-level", "cors-policy", "env-prefix"]
49
- }
50
- ],
51
- "inputs": [
52
- {
53
- "id": "display-name",
54
- "category": "branding",
55
- "order": 1,
56
- "ui": {
57
- "type": "text-input",
58
- "label": "Display Name",
59
- "description": "Human-readable name for your service",
60
- "helpText": "This will be shown in dashboards, documentation, and user interfaces",
61
- "required": true,
62
- "showDefault": true
63
- },
64
- "generation": {
65
- "logic": "title-case conversion of service-name",
66
- "example": "user-service → User Service"
67
- },
68
- "validation": {
69
- "minLength": 3,
70
- "maxLength": 100
71
- },
72
- "customization": {
73
- "commonReasons": ["Branding preferences", "Marketing names", "User-friendly labels"],
74
- "impact": "Affects documentation, dashboards, and user-facing displays"
75
- }
76
- },
77
- {
78
- "id": "description",
79
- "category": "branding",
80
- "order": 2,
81
- "ui": {
82
- "type": "textarea",
83
- "label": "Service Description",
84
- "description": "Brief description of what this service does",
85
- "helpText": "This will be used in documentation and service registries",
86
- "required": true,
87
- "showDefault": true,
88
- "rows": 3
89
- },
90
- "generation": {
91
- "logic": "template: 'A {service-type} service built with CLODO Framework'",
92
- "example": "A api service built with CLODO Framework"
93
- },
94
- "validation": {
95
- "minLength": 10,
96
- "maxLength": 500
97
- },
98
- "customization": {
99
- "commonReasons": ["Specific functionality details", "Business context", "Technical capabilities"],
100
- "impact": "Affects documentation, API descriptions, and service discovery"
101
- }
102
- },
103
- {
104
- "id": "version",
105
- "category": "branding",
106
- "order": 3,
107
- "ui": {
108
- "type": "text-input",
109
- "label": "Initial Version",
110
- "description": "Starting version number for your service",
111
- "helpText": "Follows semantic versioning (major.minor.patch)",
112
- "required": true,
113
- "showDefault": true
114
- },
115
- "generation": {
116
- "logic": "read from package.json or default to 1.0.0",
117
- "fallback": "1.0.0"
118
- },
119
- "validation": {
120
- "pattern": "^\\d+\\.\\d+\\.\\d+$",
121
- "customMessage": "Version must follow semantic versioning (e.g., 1.0.0)"
122
- },
123
- "customization": {
124
- "commonReasons": ["Existing version schemes", "Release planning", "Dependency alignment"],
125
- "impact": "Affects package management and deployment versioning"
126
- }
127
- },
128
- {
129
- "id": "author",
130
- "category": "branding",
131
- "order": 4,
132
- "ui": {
133
- "type": "text-input",
134
- "label": "Author/Organization",
135
- "description": "Who is responsible for this service",
136
- "helpText": "Individual name, team name, or organization",
137
- "required": true,
138
- "showDefault": true
139
- },
140
- "generation": {
141
- "logic": "process.env.USER or git config user.name",
142
- "fallback": "CLODO Framework"
143
- },
144
- "validation": {
145
- "minLength": 2,
146
- "maxLength": 100
147
- },
148
- "customization": {
149
- "commonReasons": ["Team attribution", "Organization branding", "Contact information"],
150
- "impact": "Affects documentation, support attribution, and ownership tracking"
151
- }
152
- },
153
- {
154
- "id": "production-url",
155
- "category": "networking",
156
- "order": 5,
157
- "ui": {
158
- "type": "text-input",
159
- "label": "Production URL",
160
- "description": "Primary production endpoint",
161
- "helpText": "This will be your main API URL in production",
162
- "required": true,
163
- "showDefault": true
164
- },
165
- "generation": {
166
- "logic": "api.{domain-name}",
167
- "example": "api.mycompany.com"
168
- },
169
- "validation": {
170
- "pattern": "^https?://[a-zA-Z0-9][a-zA-Z0-9-\\.]*\\.[a-zA-Z]{2,}(/.*)?$",
171
- "customMessage": "Must be a valid URL starting with http:// or https://"
172
- },
173
- "customization": {
174
- "commonReasons": ["Existing subdomain structure", "CDN requirements", "Load balancer setup"],
175
- "impact": "Affects production deployments, client integrations, and DNS configuration"
176
- }
177
- },
178
- {
179
- "id": "staging-url",
180
- "category": "networking",
181
- "order": 6,
182
- "ui": {
183
- "type": "text-input",
184
- "label": "Staging URL",
185
- "description": "Testing environment endpoint",
186
- "helpText": "Used for pre-production testing and validation",
187
- "required": true,
188
- "showDefault": true
189
- },
190
- "generation": {
191
- "logic": "staging-api.{domain-name}",
192
- "example": "staging-api.mycompany.com"
193
- },
194
- "validation": {
195
- "pattern": "^https?://[a-zA-Z0-9][a-zA-Z0-9-\\.]*\\.[a-zA-Z]{2,}(/.*)?$",
196
- "customMessage": "Must be a valid URL starting with http:// or https://"
197
- },
198
- "customization": {
199
- "commonReasons": ["Testing environment naming", "Isolation requirements", "CI/CD pipeline setup"],
200
- "impact": "Affects testing workflows, QA processes, and staging deployments"
201
- }
202
- },
203
- {
204
- "id": "development-url",
205
- "category": "networking",
206
- "order": 7,
207
- "ui": {
208
- "type": "text-input",
209
- "label": "Development URL",
210
- "description": "Local development endpoint",
211
- "helpText": "Used during local development and debugging",
212
- "required": true,
213
- "showDefault": true
214
- },
215
- "generation": {
216
- "logic": "dev-api.{domain-name}",
217
- "example": "dev-api.mycompany.com"
218
- },
219
- "validation": {
220
- "pattern": "^https?://[a-zA-Z0-9][a-zA-Z0-9-\\.]*\\.[a-zA-Z]{2,}(/.*)?$",
221
- "customMessage": "Must be a valid URL starting with http:// or https://"
222
- },
223
- "customization": {
224
- "commonReasons": ["Local development setup", "Debugging preferences", "Team conventions"],
225
- "impact": "Affects local development workflow and debugging processes"
226
- }
227
- },
228
- {
229
- "id": "service-directory",
230
- "category": "structure",
231
- "order": 8,
232
- "ui": {
233
- "type": "text-input",
234
- "label": "Service Directory",
235
- "description": "Directory path for this service",
236
- "helpText": "Relative to project root",
237
- "required": true,
238
- "showDefault": true
239
- },
240
- "generation": {
241
- "logic": "./services/{service-name}",
242
- "example": "./services/user-service"
243
- },
244
- "validation": {
245
- "pattern": "^\\./[a-zA-Z0-9][a-zA-Z0-9-_/]*$",
246
- "customMessage": "Must be a relative path starting with ./"
247
- },
248
- "customization": {
249
- "commonReasons": ["Existing project structure", "Monorepo organization", "Team conventions"],
250
- "impact": "Affects file organization, build processes, and deployment scripts"
251
- }
252
- },
253
- {
254
- "id": "database-name",
255
- "category": "structure",
256
- "order": 9,
257
- "ui": {
258
- "type": "text-input",
259
- "label": "Database Name",
260
- "description": "Name for the service's database",
261
- "helpText": "Used for D1 database and connection strings",
262
- "required": true,
263
- "showDefault": true
264
- },
265
- "generation": {
266
- "logic": "{service-name}-db",
267
- "example": "user-service-db"
268
- },
269
- "validation": {
270
- "pattern": "^[a-zA-Z][a-zA-Z0-9-_]*$",
271
- "minLength": 3,
272
- "maxLength": 63
273
- },
274
- "customization": {
275
- "commonReasons": ["Database naming conventions", "Existing databases", "Multi-environment needs"],
276
- "impact": "Affects database creation, migrations, and connection configurations"
277
- }
278
- },
279
- {
280
- "id": "worker-name",
281
- "category": "structure",
282
- "order": 10,
283
- "ui": {
284
- "type": "text-input",
285
- "label": "Worker Name",
286
- "description": "Name for the Cloudflare Worker",
287
- "helpText": "Used for deployment and worker management",
288
- "required": true,
289
- "showDefault": true
290
- },
291
- "generation": {
292
- "logic": "{service-name}-worker",
293
- "example": "user-service-worker"
294
- },
295
- "validation": {
296
- "pattern": "^[a-zA-Z][a-zA-Z0-9-_]*$",
297
- "minLength": 3,
298
- "maxLength": 63
299
- },
300
- "customization": {
301
- "commonReasons": ["Worker naming conventions", "Deployment strategies", "Resource identification"],
302
- "impact": "Affects Cloudflare deployments, monitoring, and worker management"
303
- }
304
- },
305
- {
306
- "id": "log-level",
307
- "category": "configuration",
308
- "order": 11,
309
- "ui": {
310
- "type": "select",
311
- "label": "Log Level",
312
- "description": "Default logging verbosity",
313
- "helpText": "Controls how much information is logged",
314
- "required": true,
315
- "showDefault": true,
316
- "options": [
317
- {
318
- "value": "error",
319
- "label": "Error Only",
320
- "description": "Only log errors and critical issues"
321
- },
322
- {
323
- "value": "warn",
324
- "label": "Warnings",
325
- "description": "Log warnings and errors"
326
- },
327
- {
328
- "value": "info",
329
- "label": "Info",
330
- "description": "Log general information, warnings, and errors"
331
- },
332
- {
333
- "value": "debug",
334
- "label": "Debug",
335
- "description": "Log detailed debugging information"
336
- }
337
- ]
338
- },
339
- "generation": {
340
- "logic": "environment-based default (production: warn, staging: info, development: debug)",
341
- "mapping": {
342
- "development": "debug",
343
- "staging": "info",
344
- "production": "warn"
345
- }
346
- },
347
- "customization": {
348
- "commonReasons": ["Debugging needs", "Performance monitoring", "Compliance requirements"],
349
- "impact": "Affects log volume, performance, and troubleshooting capabilities"
350
- }
351
- },
352
- {
353
- "id": "cors-policy",
354
- "category": "configuration",
355
- "order": 12,
356
- "ui": {
357
- "type": "select",
358
- "label": "CORS Policy",
359
- "description": "Cross-origin resource sharing settings",
360
- "helpText": "Controls which domains can access your API",
361
- "required": true,
362
- "showDefault": true,
363
- "options": [
364
- {
365
- "value": "*",
366
- "label": "Allow All (*)",
367
- "description": "Allow requests from any domain (development only)"
368
- },
369
- {
370
- "value": "same-origin",
371
- "label": "Same Origin",
372
- "description": "Only allow requests from the same domain"
373
- },
374
- {
375
- "value": "domain",
376
- "label": "Domain Only",
377
- "description": "Only allow requests from your domain"
378
- },
379
- {
380
- "value": "custom",
381
- "label": "Custom Origins",
382
- "description": "Specify custom allowed origins"
383
- }
384
- ]
385
- },
386
- "generation": {
387
- "logic": "environment-based (production: restrict to domain, development: allow all)",
388
- "mapping": {
389
- "development": "*",
390
- "staging": "domain",
391
- "production": "domain"
392
- }
393
- },
394
- "customization": {
395
- "commonReasons": ["Security requirements", "Multi-domain needs", "Third-party integrations"],
396
- "impact": "Affects API accessibility, security, and integration capabilities"
397
- }
398
- },
399
- {
400
- "id": "env-prefix",
401
- "category": "configuration",
402
- "order": 13,
403
- "ui": {
404
- "type": "text-input",
405
- "label": "Environment Variable Prefix",
406
- "description": "Prefix for environment-specific variables",
407
- "helpText": "Used to namespace environment variables",
408
- "required": true,
409
- "showDefault": true
410
- },
411
- "generation": {
412
- "logic": "environment-based (PROD_, STAGING_, DEV_)",
413
- "mapping": {
414
- "development": "DEV_",
415
- "staging": "STAGING_",
416
- "production": "PROD_"
417
- }
418
- },
419
- "validation": {
420
- "pattern": "^[A-Z][A-Z0-9_]*_$",
421
- "customMessage": "Must be uppercase letters, numbers, underscores, ending with underscore"
422
- },
423
- "customization": {
424
- "commonReasons": ["Existing conventions", "Multi-service environments", "Deployment strategies"],
425
- "impact": "Affects environment variable naming and configuration management"
426
- }
427
- }
428
- ],
429
- "completion": {
430
- "message": "Configuration customized! 🎨",
431
- "summary": "Reviewed and customized {acceptedCount} of {totalCount} settings",
432
- "nextPhase": "automated-generation",
433
- "estimatedNextTime": "30 seconds"
434
- },
435
- "bulkActions": {
436
- "acceptAll": {
437
- "label": "Accept All Defaults",
438
- "description": "Use all auto-generated values without changes",
439
- "confirmation": "This will apply all default values. You can change them later if needed."
440
- },
441
- "acceptCategory": {
442
- "label": "Accept Category",
443
- "description": "Accept all defaults in a category",
444
- "categories": ["branding", "networking", "structure", "configuration"]
445
- },
446
- "resetToDefaults": {
447
- "label": "Reset to Defaults",
448
- "description": "Revert all changes back to auto-generated defaults"
449
- }
450
- }
451
- }