@tamyla/clodo-framework 3.1.3 → 3.1.5

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/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [3.1.5](https://github.com/tamylaa/clodo-framework/compare/v3.1.4...v3.1.5) (2025-10-25)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * deploy command should use full three-tier architecture (88+ fields)- Updated collect() to return comprehensive three-tier result- Deploy command now uses full collection with confirmations- Prevents duplicate confirmation steps in interactive mode- Restores the 80+ field deployment flow with user confirmations ([5c6c226](https://github.com/tamylaa/clodo-framework/commit/5c6c226d652d3dc7d1532147af4e87f7ccb8a811))
7
+
8
+ ## [3.1.4](https://github.com/tamylaa/clodo-framework/compare/v3.1.3...v3.1.4) (2025-10-25)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * deploy command should collect deployment inputs, not service creation inputs ([63cbccf](https://github.com/tamylaa/clodo-framework/commit/63cbccfd8b3886668304a7dce51508e6ccba2450))
14
+
1
15
  ## [3.1.3](https://github.com/tamylaa/clodo-framework/compare/v3.1.2...v3.1.3) (2025-10-25)
2
16
 
3
17
 
@@ -645,9 +645,13 @@ program
645
645
  let coreInputs = {};
646
646
  let source = 'interactive';
647
647
 
648
- // Interactive mode: run input collector
648
+ // Interactive mode: run full three-tier input collection
649
649
  if (isInteractive) {
650
- coreInputs = await inputCollector.collect();
650
+ const collectionResult = await inputCollector.collect();
651
+ coreInputs = collectionResult.flatInputs;
652
+
653
+ // The three-tier collection already included confirmations
654
+ // Skip the separate confirmation step since it was done in collect()
651
655
  } else {
652
656
  // Non-interactive mode: load from config file or stored config
653
657
 
@@ -748,8 +752,10 @@ program
748
752
  }
749
753
 
750
754
  // Tier 2: Generate smart confirmations using existing ConfirmationHandler
751
- // Note: ConfirmationEngine prints its own header
752
- const confirmations = await confirmationHandler.generateAndConfirm(coreInputs);
755
+ // Skip if interactive mode (confirmations already done in three-tier collection)
756
+ const confirmations = isInteractive
757
+ ? {} // Confirmations already collected in interactive mode
758
+ : await confirmationHandler.generateAndConfirm(coreInputs);
753
759
 
754
760
  // Show deployment summary
755
761
  console.log(chalk.cyan('\nšŸ“Š Deployment Summary'));
@@ -589,16 +589,25 @@ export class InputCollector {
589
589
  }
590
590
 
591
591
  /**
592
- * Collect inputs and return flat core inputs object
593
- * Used by CLI for deployment
592
+ * Collect inputs and return full three-tier result
593
+ * Used by CLI for comprehensive service operations
594
594
  */
595
595
  async collect() {
596
596
  const result = await this.collectInputsWithTransparency();
597
- // Flatten the core inputs from {id: {value, ...}} to {id: value}
597
+
598
+ // For CLI compatibility, also provide flat coreInputs
598
599
  const flatCoreInputs = {};
599
600
  for (const [key, inputObj] of Object.entries(result.coreInputs)) {
600
601
  flatCoreInputs[key] = inputObj.value;
601
602
  }
602
- return flatCoreInputs;
603
+
604
+ // Merge smart confirmations into flat object
605
+ for (const [key, value] of Object.entries(result.smartConfirmations)) {
606
+ flatCoreInputs[key] = value;
607
+ }
608
+ return {
609
+ ...result,
610
+ flatInputs: flatCoreInputs
611
+ };
603
612
  }
604
613
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamyla/clodo-framework",
3
- "version": "3.1.3",
3
+ "version": "3.1.5",
4
4
  "description": "Reusable framework for Clodo-style software architecture on Cloudflare Workers + D1",
5
5
  "type": "module",
6
6
  "sideEffects": [