@tamyla/clodo-framework 2.0.19 → 3.0.2

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 (56) hide show
  1. package/CHANGELOG.md +206 -62
  2. package/bin/clodo-service.js +32 -56
  3. package/bin/database/README.md +33 -0
  4. package/bin/database/deployment-db-manager.js +527 -0
  5. package/bin/database/enterprise-db-manager.js +736 -0
  6. package/bin/database/wrangler-d1-manager.js +775 -0
  7. package/bin/shared/cloudflare/domain-discovery.js +636 -0
  8. package/bin/shared/cloudflare/domain-manager.js +952 -0
  9. package/bin/shared/cloudflare/index.js +8 -0
  10. package/bin/shared/cloudflare/ops.js +359 -0
  11. package/bin/shared/config/index.js +1 -1
  12. package/bin/shared/database/connection-manager.js +374 -0
  13. package/bin/shared/database/index.js +7 -0
  14. package/bin/shared/database/orchestrator.js +726 -0
  15. package/bin/shared/deployment/auditor.js +969 -0
  16. package/bin/shared/deployment/index.js +10 -0
  17. package/bin/shared/deployment/rollback-manager.js +570 -0
  18. package/bin/shared/deployment/validator.js +779 -0
  19. package/bin/shared/index.js +32 -0
  20. package/bin/shared/monitoring/health-checker.js +484 -0
  21. package/bin/shared/monitoring/index.js +8 -0
  22. package/bin/shared/monitoring/memory-manager.js +387 -0
  23. package/bin/shared/monitoring/production-monitor.js +391 -0
  24. package/bin/shared/production-tester/api-tester.js +82 -0
  25. package/bin/shared/production-tester/auth-tester.js +132 -0
  26. package/bin/shared/production-tester/core.js +197 -0
  27. package/bin/shared/production-tester/database-tester.js +109 -0
  28. package/bin/shared/production-tester/index.js +77 -0
  29. package/bin/shared/production-tester/load-tester.js +131 -0
  30. package/bin/shared/production-tester/performance-tester.js +103 -0
  31. package/bin/shared/security/api-token-manager.js +312 -0
  32. package/bin/shared/security/index.js +8 -0
  33. package/bin/shared/security/secret-generator.js +937 -0
  34. package/bin/shared/security/secure-token-manager.js +398 -0
  35. package/bin/shared/utils/error-recovery.js +225 -0
  36. package/bin/shared/utils/graceful-shutdown-manager.js +390 -0
  37. package/bin/shared/utils/index.js +9 -0
  38. package/bin/shared/utils/interactive-prompts.js +146 -0
  39. package/bin/shared/utils/interactive-utils.js +530 -0
  40. package/bin/shared/utils/rate-limiter.js +246 -0
  41. package/dist/database/database-orchestrator.js +34 -12
  42. package/dist/deployment/index.js +2 -2
  43. package/dist/orchestration/multi-domain-orchestrator.js +8 -6
  44. package/dist/service-management/GenerationEngine.js +76 -28
  45. package/dist/service-management/ServiceInitializer.js +5 -3
  46. package/dist/shared/cloudflare/domain-manager.js +1 -1
  47. package/dist/shared/cloudflare/ops.js +27 -12
  48. package/dist/shared/config/index.js +1 -1
  49. package/dist/shared/deployment/index.js +2 -2
  50. package/dist/shared/security/secret-generator.js +4 -2
  51. package/dist/shared/utils/error-recovery.js +1 -1
  52. package/dist/shared/utils/graceful-shutdown-manager.js +4 -3
  53. package/dist/utils/deployment/secret-generator.js +19 -6
  54. package/package.json +7 -6
  55. package/bin/shared/config/customer-cli.js +0 -182
  56. package/dist/shared/config/customer-cli.js +0 -175
package/CHANGELOG.md CHANGED
@@ -1,105 +1,249 @@
1
- ## [2.0.19](https://github.com/tamylaa/clodo-framework/compare/v2.0.18...v2.0.19) (2025-10-12)
1
+ ## [3.0.2](https://github.com/tamylaa/clodo-framework/compare/v3.0.1...v3.0.2) (2025-10-14)
2
2
 
3
3
 
4
4
  ### Bug Fixes
5
5
 
6
- * Add comprehensive deployment configuration implementation status ([025fe82](https://github.com/tamylaa/clodo-framework/commit/025fe821a76ba9ac8cb87d14f2a116a5e8e58c43))
7
- * Consolidate configuration management and organize documentation ([e3a3d44](https://github.com/tamylaa/clodo-framework/commit/e3a3d448a74b214d75ae669f3a17e3a6ddb36ac4))
8
- * Resolve ESLint errors in security and config modules ([1080cdb](https://github.com/tamylaa/clodo-framework/commit/1080cdbb69b3ae29158b6af705d8fd376c95da7b))
6
+ * suppress secret audit logging in test/CI environments ([daa58e0](https://github.com/tamylaa/clodo-framework/commit/daa58e013f8c3c37bb251a658b78f011a56dab3f))
9
7
 
10
- ## [2.0.18](https://github.com/tamylaa/clodo-framework/compare/v2.0.17...v2.0.18) (2025-10-12)
8
+ ## [3.0.1](https://github.com/tamylaa/clodo-framework/compare/v3.0.0...v3.0.1) (2025-10-14)
11
9
 
12
10
 
13
11
  ### Bug Fixes
14
12
 
15
- * **deployment:** Critical deployment fixes - migrations, worker deployment, status tracking ([23c07e9](https://github.com/tamylaa/clodo-framework/commit/23c07e9a68fa4eb52ccd0df9421eff7d91919cb1)), closes [#2](https://github.com/tamylaa/clodo-framework/issues/2) [#3](https://github.com/tamylaa/clodo-framework/issues/3) [#4](https://github.com/tamylaa/clodo-framework/issues/4)
13
+ * reset version to 2.0.20 for clean semantic release ([724df16](https://github.com/tamylaa/clodo-framework/commit/724df162d3fdb4a35cfc50a2cc045a714c56ba6f))
16
14
 
17
- ## [2.0.17](https://github.com/tamylaa/clodo-framework/compare/v2.0.16...v2.0.17) (2025-10-12)
15
+ # [3.0.0](https://github.com/tamylaa/clodo-framework/compare/v2.0.20...v3.0.0) (2025-10-14)
18
16
 
19
17
 
20
18
  ### Bug Fixes
21
19
 
22
- * use ConfigurationValidator as static class, not instance ([12caaeb](https://github.com/tamylaa/clodo-framework/commit/12caaeba17426239f98dacd2fdb36ac45a7a496b))
20
+ * include all bin/shared files and correct imports to use dist/ ([268b525](https://github.com/tamylaa/clodo-framework/commit/268b5254d269951e78d481840a9a0fbba486c879)), closes [#deploy-v3](https://github.com/tamylaa/clodo-framework/issues/deploy-v3)
21
+ * resolve async logging and migration command issues (v3.0.2) ([0ed0112](https://github.com/tamylaa/clodo-framework/commit/0ed0112b2d26983fbd1329dce88286d4eca6d63b))
22
+ * resolve test failures and add comprehensive validation ([5abcacb](https://github.com/tamylaa/clodo-framework/commit/5abcacb39f97bcf58f92a75a8ed2602381b6c266))
23
+ * use temp directory in generation-engine-unit test for CI/CD compatibility ([a28a923](https://github.com/tamylaa/clodo-framework/commit/a28a92311fa6d8b1c6bd95a354c5e7cd4ada3b48))
23
24
 
24
- ## [2.0.16](https://github.com/tamylaa/clodo-framework/compare/v2.0.15...v2.0.16) (2025-10-12)
25
25
 
26
+ ### BREAKING CHANGES
26
27
 
27
- ### Bug Fixes
28
-
29
- * comprehensive readline state management and stdin restoration ([a0716fe](https://github.com/tamylaa/clodo-framework/commit/a0716fef9a5db8211b851ab7861bf2419f31e7fa))
28
+ * none
29
+ VALIDATION: Dry-run test PASSED with real Cloudflare API integration
30
30
 
31
- ## [2.0.15](https://github.com/tamylaa/clodo-framework/compare/v2.0.14...v2.0.15) (2025-10-12)
31
+ Validation Reports:
32
+ - PRODUCTION_VALIDATION_REPORT.md - Full validation analysis
33
+ - DEPLOY_COMMAND_VALIDATION.md - Deploy command documentation
34
+ - DRY_RUN_TEST_RESULTS.md - Dry-run test with real API
35
+ - VALIDATION_SUMMARY.md - Executive summary
32
36
 
37
+ Confidence: 95% - Ready for production deployment
33
38
 
34
- ### Bug Fixes
35
-
36
- * improve customer selection UX with number support ([2e10d56](https://github.com/tamylaa/clodo-framework/commit/2e10d562061c478ecc238e1185e2514af453d00e))
37
-
38
- ## [2.0.14](https://github.com/tamylaa/clodo-framework/compare/v2.0.13...v2.0.14) (2025-10-12)
39
+ ## [3.0.1](https://github.com/tamylaa/clodo-framework/compare/v3.0.0...v3.0.1) (2025-10-14)
39
40
 
40
41
 
41
42
  ### Bug Fixes
42
43
 
43
- * add missing readdirSync import in config-persistence.js ([767efc4](https://github.com/tamylaa/clodo-framework/commit/767efc4aa839c7afa592fe3a1df21b62870bdf23))
44
- * remove require() calls in ESM modules ([a1783f9](https://github.com/tamylaa/clodo-framework/commit/a1783f9c75c59ae8ce9daacbc223ad80b17d61bc))
44
+ * include all bin/shared files and correct imports to use dist/ ([268b525](https://github.com/tamylaa/clodo-framework/commit/268b5254d269951e78d481840a9a0fbba486c879)), closes [#deploy-v3](https://github.com/tamylaa/clodo-framework/issues/deploy-v3)
45
45
 
46
- ## [2.0.13](https://github.com/tamylaa/clodo-framework/compare/v2.0.12...v2.0.13) (2025-10-12)
46
+ # [3.0.0](https://github.com/tamylaa/clodo-framework/compare/v2.0.20...v3.0.0) (2025-10-14)
47
47
 
48
48
 
49
49
  ### Bug Fixes
50
50
 
51
- * comprehensive deployment and architectural integration fixes ([2a9db26](https://github.com/tamylaa/clodo-framework/commit/2a9db264c0d60f1669597885105cc1fdc0cc2e87))
52
-
53
- ## [2.0.12](https://github.com/tamylaa/clodo-framework/compare/v2.0.11...v2.0.12) (2025-10-12)
54
-
51
+ * resolve test failures and add comprehensive validation ([5abcacb](https://github.com/tamylaa/clodo-framework/commit/5abcacb39f97bcf58f92a75a8ed2602381b6c266))
52
+ * use temp directory in generation-engine-unit test for CI/CD compatibility ([a28a923](https://github.com/tamylaa/clodo-framework/commit/a28a92311fa6d8b1c6bd95a354c5e7cd4ada3b48))
55
53
 
56
- ### Bug Fixes
57
-
58
- * correct zone details property access in auto-discovery ([bfca8af](https://github.com/tamylaa/clodo-framework/commit/bfca8af21a28e96e3fa8809d38de997982723d5a))
59
54
 
60
- ## [2.0.11](https://github.com/tamylaa/clodo-framework/compare/v2.0.10...v2.0.11) (2025-10-12)
55
+ ### BREAKING CHANGES
61
56
 
57
+ * none
58
+ VALIDATION: Dry-run test PASSED with real Cloudflare API integration
62
59
 
63
- ### Bug Fixes
60
+ Validation Reports:
61
+ - PRODUCTION_VALIDATION_REPORT.md - Full validation analysis
62
+ - DEPLOY_COMMAND_VALIDATION.md - Deploy command documentation
63
+ - DRY_RUN_TEST_RESULTS.md - Dry-run test with real API
64
+ - VALIDATION_SUMMARY.md - Executive summary
64
65
 
65
- * correct domain selection parsing in auto-discovery ([ea80443](https://github.com/tamylaa/clodo-framework/commit/ea80443bf9968d592f066e7d5d13ee47d6fde889))
66
+ Confidence: 95% - Ready for production deployment
66
67
 
67
- ## [2.0.10](https://github.com/tamylaa/clodo-framework/compare/v2.0.9...v2.0.10) (2025-10-12)
68
+ ## [2.0.20](https://github.com/tamylaa/clodo-framework/compare/v2.0.19...v2.0.20) (2025-10-13)
68
69
 
69
70
 
70
71
  ### Bug Fixes
71
72
 
72
- * move interactive-prompts to src/ to fix published package imports ([94fc31c](https://github.com/tamylaa/clodo-framework/commit/94fc31c0afa91c52f2073b3ab9f766693c5f68e0))
73
-
74
- ## [2.0.9](https://github.com/tamylaa/clodo-framework/compare/v2.0.8...v2.0.9) (2025-10-12)
75
-
76
-
77
- ### Bug Fixes
78
-
79
- * re-release v2.0.8 features that were missing from npm package ([33cf712](https://github.com/tamylaa/clodo-framework/commit/33cf71267c07610e04bd8c752db4385c6f5ca603))
80
-
81
- ## [2.0.8](https://github.com/tamylaa/clodo-framework/compare/v2.0.7...v2.0.8) (2025-10-12)
82
-
83
-
84
- ### Bug Fixes
85
-
86
- * clean up skipped security validation test with proper TODO ([722afbe](https://github.com/tamylaa/clodo-framework/commit/722afbe056be6f8ccb623acbbd3ab9ac4ce75caa))
87
- * Enhanced customer config, CloudflareAPI utility, and code consolidation ([447ed9b](https://github.com/tamylaa/clodo-framework/commit/447ed9b5d8a2bb806386fc334e2e8bf4efeff43b))
88
- * implement missing deployment phase methods in MultiDomainOrchestrator ([b0cb1e8](https://github.com/tamylaa/clodo-framework/commit/b0cb1e828679df61d9ebde2551599f47ddeb20d2))
89
- * integrate CloudflareAPI auto-discovery and cleanup duplicates ([8166d18](https://github.com/tamylaa/clodo-framework/commit/8166d189bbe1e5b78db8f24d56221f0e18e72021))
90
- * resolve ESLint no-undef errors in cloudflare index.js ([1a2bb7f](https://github.com/tamylaa/clodo-framework/commit/1a2bb7fa175bab142f3d5be451cb44ef1b9d8747))
91
-
92
- ## [2.0.8](https://github.com/tamylaa/clodo-framework/compare/v2.0.7...v2.0.8) (2025-10-12)
93
-
94
-
95
- ### Bug Fixes
96
-
97
- * clean up skipped security validation test with proper TODO ([722afbe](https://github.com/tamylaa/clodo-framework/commit/722afbe056be6f8ccb623acbbd3ab9ac4ce75caa))
98
- * Enhanced customer config, CloudflareAPI utility, and code consolidation ([447ed9b](https://github.com/tamylaa/clodo-framework/commit/447ed9b5d8a2bb806386fc334e2e8bf4efeff43b))
99
- * implement missing deployment phase methods in MultiDomainOrchestrator ([b0cb1e8](https://github.com/tamylaa/clodo-framework/commit/b0cb1e828679df61d9ebde2551599f47ddeb20d2))
100
- * integrate CloudflareAPI auto-discovery and cleanup duplicates ([8166d18](https://github.com/tamylaa/clodo-framework/commit/8166d189bbe1e5b78db8f24d56221f0e18e72021))
101
- * resolve ESLint no-undef errors in cloudflare index.js ([1a2bb7f](https://github.com/tamylaa/clodo-framework/commit/1a2bb7fa175bab142f3d5be451cb44ef1b9d8747))
73
+ * Complete consolidation cleanup - fix all bin file imports ([4132a2c](https://github.com/tamylaa/clodo-framework/commit/4132a2c0878df84ccc0bd78c6964657810d1f4dc))
102
74
 
75
+ ## [2.0.19](https://github.com/tamylaa/clodo-framework/compare/v2.0.18...v2.0.19) (2025-10-12)
76
+
77
+
78
+ ### Bug Fixes
79
+
80
+ * Add comprehensive deployment configuration implementation status ([025fe82](https://github.com/tamylaa/clodo-framework/commit/025fe821a76ba9ac8cb87d14f2a116a5e8e58c43))
81
+ * Consolidate configuration management and organize documentation ([e3a3d44](https://github.com/tamylaa/clodo-framework/commit/e3a3d448a74b214d75ae669f3a17e3a6ddb36ac4))
82
+ * Resolve ESLint errors in security and config modules ([1080cdb](https://github.com/tamylaa/clodo-framework/commit/1080cdbb69b3ae29158b6af705d8fd376c95da7b))
83
+ * Complete consolidation cleanup - fix all bin file imports ([4132a2c](https://github.com/tamylaa/clodo-framework/commit/4132a2c))
84
+
85
+ ### BREAKING CHANGES
86
+
87
+ **This release includes breaking changes due to configuration consolidation. Please review the migration guide below.**
88
+
89
+ #### Removed Package Exports:
90
+ - `@tamyla/clodo-framework/config/customer-loader` → **Use** `@tamyla/clodo-framework/utils/config` instead
91
+ - `@tamyla/clodo-framework/config/cli` → **Deprecated** (no direct replacement)
92
+
93
+ #### Removed CLI Commands:
94
+ - `clodo-customer-config` → **Use** `clodo-service deploy` instead
95
+
96
+ #### Migration Guide:
97
+
98
+ **For External Package Users:**
99
+ ```javascript
100
+ // OLD (v2.0.18 and earlier - BROKEN in v2.0.19+)
101
+ import { CustomerConfigLoader } from '@tamyla/clodo-framework/config/customer-loader';
102
+ const loader = new CustomerConfigLoader();
103
+ const config = loader.loadConfig('customer', 'production');
104
+
105
+ // NEW (v2.0.19+)
106
+ import { UnifiedConfigManager } from '@tamyla/clodo-framework/utils/config';
107
+ const manager = new UnifiedConfigManager();
108
+ const config = manager.loadCustomerConfig('customer', 'production');
109
+ ```
110
+
111
+ **Method Mappings:**
112
+ - `CustomerConfigLoader.loadConfig(customer, env)` → `UnifiedConfigManager.loadCustomerConfig(customer, env)`
113
+ - `CustomerConfigLoader.parseToStandardFormat(config)` → `UnifiedConfigManager.parseToStandardFormat(config)`
114
+ - `ConfigPersistenceManager.configExists(customer, env)` → `UnifiedConfigManager.configExists(customer, env)`
115
+ - `ConfigPersistenceManager.displayCustomerConfig(customer, env)` → `UnifiedConfigManager.displayCustomerConfig(customer, env)`
116
+ - `ConfigPersistenceManager.getConfiguredCustomers()` → `UnifiedConfigManager.listCustomers()`
117
+ - `ConfigPersistenceManager.saveDeploymentConfig(customer, env, config)` → `UnifiedConfigManager.saveCustomerConfig(customer, env, config)`
118
+
119
+ **For CLI Users:**
120
+ ```bash
121
+ # OLD (v2.0.18 and earlier)
122
+ clodo-customer-config create my-customer
123
+
124
+ # NEW (v2.0.19+)
125
+ clodo-service deploy
126
+ # Then select customer interactively
127
+ ```
128
+
129
+ #### What Was Consolidated:
130
+ - **Deleted files** (backed up in `backups/pre-consolidation-cleanup_2025-10-12_21-05-59/`):
131
+ - `src/config/customer-config-loader.js` (1,849 bytes)
132
+ - `src/config/CustomerConfigCLI.js` (14,892 bytes)
133
+ - `src/utils/deployment/ConfigurationManager.js` (9,235 bytes)
134
+ - `src/utils/deployment/ConfigMutator.js` (8,342 bytes)
135
+ - `src/utils/deployment/DeploymentManager.js` (6,819 bytes)
136
+ - `src/utils/deployment/config-persistence.js` (6,656 bytes)
137
+ - `bin/shared/config/customer-cli.js` (deprecated CLI wrapper)
138
+
139
+ - **New consolidated files**:
140
+ - `src/utils/config/unified-config-manager.js` (493 lines) - All customer config operations
141
+ - `src/utils/config/wrangler-config-manager.js` (392 lines) - All wrangler.toml operations
142
+
143
+ #### Why This Change?
144
+ - **Reduced Complexity**: 47,793 bytes of duplicate code consolidated into 885 lines
145
+ - **Better Maintainability**: Single source of truth for config operations
146
+ - **Improved Testing**: Consolidated logic = easier to test
147
+ - **Clearer Architecture**: Documented 3-layer config system (wrangler.toml → customer .env → domains.js)
148
+
149
+ #### Documentation:
150
+ - See `docs/DOMAIN_CONFIGURATION_ARCHITECTURE.md` for complete architecture guide (28 pages)
151
+ - See `docs/CONSOLIDATION_IMPACT_ANALYSIS.md` for detailed impact analysis
152
+ - See `docs/DEPLOYMENT_CONFIGURATION_STATUS.md` for implementation proof
153
+
154
+ ## [2.0.18](https://github.com/tamylaa/clodo-framework/compare/v2.0.17...v2.0.18) (2025-10-12)
155
+
156
+
157
+ ### Bug Fixes
158
+
159
+ * **deployment:** Critical deployment fixes - migrations, worker deployment, status tracking ([23c07e9](https://github.com/tamylaa/clodo-framework/commit/23c07e9a68fa4eb52ccd0df9421eff7d91919cb1)), closes [#2](https://github.com/tamylaa/clodo-framework/issues/2) [#3](https://github.com/tamylaa/clodo-framework/issues/3) [#4](https://github.com/tamylaa/clodo-framework/issues/4)
160
+
161
+ ## [2.0.17](https://github.com/tamylaa/clodo-framework/compare/v2.0.16...v2.0.17) (2025-10-12)
162
+
163
+
164
+ ### Bug Fixes
165
+
166
+ * use ConfigurationValidator as static class, not instance ([12caaeb](https://github.com/tamylaa/clodo-framework/commit/12caaeba17426239f98dacd2fdb36ac45a7a496b))
167
+
168
+ ## [2.0.16](https://github.com/tamylaa/clodo-framework/compare/v2.0.15...v2.0.16) (2025-10-12)
169
+
170
+
171
+ ### Bug Fixes
172
+
173
+ * comprehensive readline state management and stdin restoration ([a0716fe](https://github.com/tamylaa/clodo-framework/commit/a0716fef9a5db8211b851ab7861bf2419f31e7fa))
174
+
175
+ ## [2.0.15](https://github.com/tamylaa/clodo-framework/compare/v2.0.14...v2.0.15) (2025-10-12)
176
+
177
+
178
+ ### Bug Fixes
179
+
180
+ * improve customer selection UX with number support ([2e10d56](https://github.com/tamylaa/clodo-framework/commit/2e10d562061c478ecc238e1185e2514af453d00e))
181
+
182
+ ## [2.0.14](https://github.com/tamylaa/clodo-framework/compare/v2.0.13...v2.0.14) (2025-10-12)
183
+
184
+
185
+ ### Bug Fixes
186
+
187
+ * add missing readdirSync import in config-persistence.js ([767efc4](https://github.com/tamylaa/clodo-framework/commit/767efc4aa839c7afa592fe3a1df21b62870bdf23))
188
+ * remove require() calls in ESM modules ([a1783f9](https://github.com/tamylaa/clodo-framework/commit/a1783f9c75c59ae8ce9daacbc223ad80b17d61bc))
189
+
190
+ ## [2.0.13](https://github.com/tamylaa/clodo-framework/compare/v2.0.12...v2.0.13) (2025-10-12)
191
+
192
+
193
+ ### Bug Fixes
194
+
195
+ * comprehensive deployment and architectural integration fixes ([2a9db26](https://github.com/tamylaa/clodo-framework/commit/2a9db264c0d60f1669597885105cc1fdc0cc2e87))
196
+
197
+ ## [2.0.12](https://github.com/tamylaa/clodo-framework/compare/v2.0.11...v2.0.12) (2025-10-12)
198
+
199
+
200
+ ### Bug Fixes
201
+
202
+ * correct zone details property access in auto-discovery ([bfca8af](https://github.com/tamylaa/clodo-framework/commit/bfca8af21a28e96e3fa8809d38de997982723d5a))
203
+
204
+ ## [2.0.11](https://github.com/tamylaa/clodo-framework/compare/v2.0.10...v2.0.11) (2025-10-12)
205
+
206
+
207
+ ### Bug Fixes
208
+
209
+ * correct domain selection parsing in auto-discovery ([ea80443](https://github.com/tamylaa/clodo-framework/commit/ea80443bf9968d592f066e7d5d13ee47d6fde889))
210
+
211
+ ## [2.0.10](https://github.com/tamylaa/clodo-framework/compare/v2.0.9...v2.0.10) (2025-10-12)
212
+
213
+
214
+ ### Bug Fixes
215
+
216
+ * move interactive-prompts to src/ to fix published package imports ([94fc31c](https://github.com/tamylaa/clodo-framework/commit/94fc31c0afa91c52f2073b3ab9f766693c5f68e0))
217
+
218
+ ## [2.0.9](https://github.com/tamylaa/clodo-framework/compare/v2.0.8...v2.0.9) (2025-10-12)
219
+
220
+
221
+ ### Bug Fixes
222
+
223
+ * re-release v2.0.8 features that were missing from npm package ([33cf712](https://github.com/tamylaa/clodo-framework/commit/33cf71267c07610e04bd8c752db4385c6f5ca603))
224
+
225
+ ## [2.0.8](https://github.com/tamylaa/clodo-framework/compare/v2.0.7...v2.0.8) (2025-10-12)
226
+
227
+
228
+ ### Bug Fixes
229
+
230
+ * clean up skipped security validation test with proper TODO ([722afbe](https://github.com/tamylaa/clodo-framework/commit/722afbe056be6f8ccb623acbbd3ab9ac4ce75caa))
231
+ * Enhanced customer config, CloudflareAPI utility, and code consolidation ([447ed9b](https://github.com/tamylaa/clodo-framework/commit/447ed9b5d8a2bb806386fc334e2e8bf4efeff43b))
232
+ * implement missing deployment phase methods in MultiDomainOrchestrator ([b0cb1e8](https://github.com/tamylaa/clodo-framework/commit/b0cb1e828679df61d9ebde2551599f47ddeb20d2))
233
+ * integrate CloudflareAPI auto-discovery and cleanup duplicates ([8166d18](https://github.com/tamylaa/clodo-framework/commit/8166d189bbe1e5b78db8f24d56221f0e18e72021))
234
+ * resolve ESLint no-undef errors in cloudflare index.js ([1a2bb7f](https://github.com/tamylaa/clodo-framework/commit/1a2bb7fa175bab142f3d5be451cb44ef1b9d8747))
235
+
236
+ ## [2.0.8](https://github.com/tamylaa/clodo-framework/compare/v2.0.7...v2.0.8) (2025-10-12)
237
+
238
+
239
+ ### Bug Fixes
240
+
241
+ * clean up skipped security validation test with proper TODO ([722afbe](https://github.com/tamylaa/clodo-framework/commit/722afbe056be6f8ccb623acbbd3ab9ac4ce75caa))
242
+ * Enhanced customer config, CloudflareAPI utility, and code consolidation ([447ed9b](https://github.com/tamylaa/clodo-framework/commit/447ed9b5d8a2bb806386fc334e2e8bf4efeff43b))
243
+ * implement missing deployment phase methods in MultiDomainOrchestrator ([b0cb1e8](https://github.com/tamylaa/clodo-framework/commit/b0cb1e828679df61d9ebde2551599f47ddeb20d2))
244
+ * integrate CloudflareAPI auto-discovery and cleanup duplicates ([8166d18](https://github.com/tamylaa/clodo-framework/commit/8166d189bbe1e5b78db8f24d56221f0e18e72021))
245
+ * resolve ESLint no-undef errors in cloudflare index.js ([1a2bb7f](https://github.com/tamylaa/clodo-framework/commit/1a2bb7fa175bab142f3d5be451cb44ef1b9d8747))
246
+
103
247
  ## [2.0.7](https://github.com/tamylaa/clodo-framework/compare/v2.0.6...v2.0.7) (2025-10-12)
104
248
 
105
249
 
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
2
2
 
3
3
  /**
4
4
  * Clodo Framework - Unified Three-Tier Service Management CLI
@@ -428,17 +428,15 @@ program
428
428
  try {
429
429
  // Use existing reusable components
430
430
  const { InputCollector } = await import('../dist/service-management/InputCollector.js');
431
- const { CustomerConfigLoader } = await import('../dist/config/customer-config-loader.js');
431
+ const { UnifiedConfigManager } = await import('../dist/utils/config/unified-config-manager.js');
432
432
  const { ConfirmationHandler } = await import('../dist/service-management/handlers/ConfirmationHandler.js');
433
433
  const { MultiDomainOrchestrator } = await import('../dist/orchestration/multi-domain-orchestrator.js');
434
- const { ConfigPersistenceManager } = await import('../dist/utils/deployment/config-persistence.js');
435
434
 
436
435
  console.log(chalk.cyan('\nšŸš€ Clodo Framework Deployment'));
437
436
  console.log(chalk.white('Using Three-Tier Input Architecture\n'));
438
437
 
439
438
  const isInteractive = options.interactive && !options.nonInteractive;
440
- const configLoader = new CustomerConfigLoader();
441
- const configPersistence = new ConfigPersistenceManager();
439
+ const configManager = new UnifiedConfigManager();
442
440
  const inputCollector = new InputCollector({ interactive: isInteractive });
443
441
  const confirmationHandler = new ConfirmationHandler({ interactive: isInteractive });
444
442
 
@@ -446,74 +444,50 @@ program
446
444
  let source = 'interactive';
447
445
 
448
446
  try {
449
- // Try new ConfigPersistenceManager first, fallback to legacy CustomerConfigLoader
447
+ // Try UnifiedConfigManager to load existing config
450
448
  let storedConfig = null;
451
449
 
452
450
  if (options.customer && options.env) {
453
- // Check new ConfigPersistenceManager
454
- if (configPersistence.configExists(options.customer, options.env)) {
451
+ // Check UnifiedConfigManager for existing config
452
+ if (configManager.configExists(options.customer, options.env)) {
455
453
  console.log(chalk.green(`āœ… Found existing configuration for ${options.customer}/${options.env}\n`));
456
- configPersistence.displayCustomerConfig(options.customer, options.env);
454
+ configManager.displayCustomerConfig(options.customer, options.env);
457
455
 
458
456
  if (!isInteractive) {
459
457
  // Non-interactive: auto-load the config
460
- const envVars = configPersistence.loadEnvironmentConfig(options.customer, options.env);
461
- storedConfig = {
462
- parsed: configLoader.parseToStandardFormat(envVars, options.customer, options.env)
463
- };
458
+ storedConfig = configManager.loadCustomerConfig(options.customer, options.env);
459
+ if (storedConfig) {
460
+ coreInputs = storedConfig;
461
+ source = 'stored-config';
462
+ }
464
463
  } else {
465
464
  // Interactive: ask if they want to use it
466
465
  const useExisting = await inputCollector.question('\n šŸ’” Use existing configuration? (Y/n): ');
467
466
 
468
467
  if (useExisting.toLowerCase() !== 'n') {
469
- const envVars = configPersistence.loadEnvironmentConfig(options.customer, options.env);
470
- storedConfig = {
471
- parsed: configLoader.parseToStandardFormat(envVars, options.customer, options.env)
472
- };
468
+ storedConfig = configManager.loadCustomerConfig(options.customer, options.env);
469
+ if (storedConfig) {
470
+ coreInputs = storedConfig;
471
+ source = 'stored-config';
472
+ }
473
473
  } else {
474
474
  console.log(chalk.white('\n šŸ“ Collecting new configuration...\n'));
475
475
  }
476
476
  }
477
477
  } else {
478
- // Fallback to legacy CustomerConfigLoader
479
- storedConfig = configLoader.loadConfig(options.customer, options.env);
480
-
481
- if (storedConfig) {
482
- source = 'stored-config';
483
- console.log(chalk.cyan('šŸ“‹ Found Existing Configuration (legacy)\n'));
484
- configLoader.displayConfig(storedConfig.parsed);
485
-
486
- if (!isInteractive) {
487
- // Non-interactive: use stored config as-is
488
- coreInputs = storedConfig.parsed;
489
- console.log(chalk.green('\nāœ… Using stored configuration (non-interactive mode)\n'));
490
- } else {
491
- // Interactive: ask to confirm or re-collect
492
- const useStored = await inputCollector.question('\nUse this configuration? (Y/n): ');
493
-
494
- if (useStored.toLowerCase() !== 'n') {
495
- coreInputs = storedConfig.parsed;
496
- console.log(chalk.green('\nāœ… Using stored configuration\n'));
497
- } else {
498
- console.log(chalk.white('\nCollecting new configuration...\n'));
499
- source = 'interactive';
500
- }
501
- }
502
- } else {
503
- console.log(chalk.yellow(`āš ļø No configuration found for ${options.customer}/${options.env}`));
504
- console.log(chalk.white('Collecting inputs interactively...\n'));
505
- }
478
+ console.log(chalk.yellow(`āš ļø No configuration found for ${options.customer}/${options.env}`));
479
+ console.log(chalk.white('Collecting inputs interactively...\n'));
506
480
  }
507
481
 
508
- // Use stored config if we found it
482
+ // Use stored config if we found it and haven't collected inputs yet
509
483
  if (storedConfig && !coreInputs.cloudflareAccountId) {
510
- coreInputs = storedConfig.parsed;
484
+ coreInputs = storedConfig;
511
485
  source = 'stored-config';
512
486
  console.log(chalk.green('\nāœ… Using stored configuration\n'));
513
487
  }
514
488
  } else if (!options.customer) {
515
489
  // Show available customers to help user
516
- const customers = configPersistence.getConfiguredCustomers();
490
+ const customers = configManager.listCustomers();
517
491
  if (customers.length > 0) {
518
492
  console.log(chalk.cyan('šŸ’” Configured customers:'));
519
493
  customers.forEach((customer, index) => {
@@ -530,7 +504,7 @@ program
530
504
  // Collect basic info with smart customer selection
531
505
  let customer = options.customer;
532
506
  if (!customer) {
533
- const customers = configPersistence.getConfiguredCustomers();
507
+ const customers = configManager.listCustomers();
534
508
  if (customers.length > 0) {
535
509
  const selection = await inputCollector.question('Select customer (enter number or name): ');
536
510
 
@@ -650,13 +624,15 @@ program
650
624
  try {
651
625
  console.log(chalk.cyan('\nšŸ’¾ Saving deployment configuration...'));
652
626
 
653
- const configFile = await configPersistence.saveDeploymentConfig({
654
- customer: coreInputs.customer,
655
- environment: coreInputs.environment,
656
- coreInputs,
657
- confirmations,
658
- result
659
- });
627
+ const configFile = await configManager.saveCustomerConfig(
628
+ coreInputs.customer,
629
+ coreInputs.environment,
630
+ {
631
+ coreInputs,
632
+ confirmations,
633
+ result
634
+ }
635
+ );
660
636
 
661
637
  console.log(chalk.green(' āœ… Configuration saved successfully!'));
662
638
  console.log(chalk.gray(` šŸ“„ File: ${configFile}`));
@@ -0,0 +1,33 @@
1
+ # Database Tools
2
+
3
+ Database management and operations tools for Clodo Framework services.
4
+
5
+ ## Tools
6
+
7
+ ### enterprise-db-manager.js
8
+ Enterprise database management CLI for Cloudflare D1 and other databases.
9
+
10
+ **Features:**
11
+ - Multi-database orchestration
12
+ - Schema management and migrations
13
+ - Backup and restore operations
14
+ - Performance monitoring and optimization
15
+ - Connection pooling and management
16
+ - Security and access control
17
+ - Audit logging and compliance
18
+
19
+ **Usage:**
20
+ ```bash
21
+ # Database operations
22
+ node bin/database/enterprise-db-manager.js migrate --service my-service
23
+ node bin/database/enterprise-db-manager.js backup --database my-db
24
+ node bin/database/enterprise-db-manager.js monitor --service my-service
25
+ ```
26
+
27
+ **Commands:**
28
+ - `migrate` - Run database migrations
29
+ - `backup` - Create database backups
30
+ - `restore` - Restore from backups
31
+ - `monitor` - Monitor database performance
32
+ - `schema` - Manage database schemas
33
+ - `connections` - Manage database connections