genbox 1.0.118 → 1.0.120

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.
@@ -62,7 +62,8 @@ exports.listCommand = new commander_1.Command('list')
62
62
  const sizeWidth = 8;
63
63
  genboxes.forEach((genbox) => {
64
64
  const statusColor = genbox.status === 'running' ? chalk_1.default.green :
65
- genbox.status === 'terminated' ? chalk_1.default.red : chalk_1.default.yellow;
65
+ genbox.status === 'terminated' ? chalk_1.default.red :
66
+ genbox.status === 'provisioning' ? chalk_1.default.cyan : chalk_1.default.yellow;
66
67
  // Show project info when listing all
67
68
  const projectSuffix = options.all && genbox.project ? ` [${genbox.project}]` : '';
68
69
  const nameWithProject = genbox.name + projectSuffix;
@@ -96,7 +97,38 @@ exports.listCommand = new commander_1.Command('list')
96
97
  // Show auto-destroy status (not applicable for stopped/terminated)
97
98
  let protectedInfo = '';
98
99
  if (genbox.status === 'stopped') {
99
- protectedInfo = chalk_1.default.dim(' gb start to resume');
100
+ // Show snapshot status if available
101
+ if (genbox.snapshot) {
102
+ if (genbox.snapshot.status === 'creating') {
103
+ const progress = genbox.snapshot.progress || 0;
104
+ protectedInfo = chalk_1.default.yellow(` (snapshot: ${progress}%)`);
105
+ }
106
+ else if (genbox.snapshot.status === 'ready') {
107
+ protectedInfo = chalk_1.default.dim(' → gb start to resume (instant)');
108
+ }
109
+ else {
110
+ protectedInfo = chalk_1.default.dim(' → gb start to resume');
111
+ }
112
+ }
113
+ else {
114
+ protectedInfo = chalk_1.default.dim(' → gb start to resume');
115
+ }
116
+ }
117
+ else if (genbox.status === 'provisioning') {
118
+ // Show restore progress if available
119
+ if (genbox.restoreProgress) {
120
+ const progress = genbox.restoreProgress.progress || 0;
121
+ const source = genbox.restoreProgress.bootSource || 'snapshot';
122
+ if (progress < 100) {
123
+ protectedInfo = chalk_1.default.cyan(` (restoring from ${source}: ${progress}%)`);
124
+ }
125
+ else {
126
+ protectedInfo = chalk_1.default.cyan(' (booting...)');
127
+ }
128
+ }
129
+ else {
130
+ protectedInfo = chalk_1.default.cyan(' (provisioning...)');
131
+ }
100
132
  }
101
133
  else if (genbox.status === 'terminated') {
102
134
  // No extra info for terminated
@@ -716,7 +716,32 @@ exports.statusCommand = new commander_1.Command('status')
716
716
  }
717
717
  // If DB says STOPPED
718
718
  if (dbStatus === 'stopped') {
719
- console.log(chalk_1.default.yellow('[STOPPED] Genbox is stopped'));
719
+ const snapshot = target.snapshot;
720
+ if (snapshot) {
721
+ if (snapshot.status === 'creating') {
722
+ const progress = snapshot.progress || 0;
723
+ console.log(chalk_1.default.yellow(`[STOPPED] Genbox is stopped (snapshot: ${progress}%)`));
724
+ console.log('');
725
+ console.log(chalk_1.default.dim(' Snapshot is being created. Once ready, resume will be instant (~25s).'));
726
+ console.log(chalk_1.default.dim(' Run `gb list` to check progress.'));
727
+ }
728
+ else if (snapshot.status === 'ready') {
729
+ console.log(chalk_1.default.yellow('[STOPPED] Genbox is stopped (snapshot ready)'));
730
+ console.log('');
731
+ console.log(chalk_1.default.green(' ✓ Snapshot is ready. Resume will be instant (~25s).'));
732
+ console.log(chalk_1.default.dim(' Run `gb start` to resume.'));
733
+ }
734
+ else {
735
+ console.log(chalk_1.default.yellow('[STOPPED] Genbox is stopped'));
736
+ console.log('');
737
+ console.log(chalk_1.default.dim(' Run `gb start` to resume.'));
738
+ }
739
+ }
740
+ else {
741
+ console.log(chalk_1.default.yellow('[STOPPED] Genbox is stopped'));
742
+ console.log('');
743
+ console.log(chalk_1.default.dim(' Run `gb start` to resume.'));
744
+ }
720
745
  return;
721
746
  }
722
747
  // Fallback: try legacy cloud-init check for backwards compatibility (should rarely reach here)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "genbox",
3
- "version": "1.0.118",
3
+ "version": "1.0.120",
4
4
  "description": "Genbox CLI - AI-Powered Development Environments",
5
5
  "main": "dist/index.js",
6
6
  "bin": {