@neetru/cli 2.12.4 → 2.12.6

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.
@@ -494,7 +494,11 @@ async function resolveArtifact(opts, productSlug, envName, cwd) {
494
494
  }
495
495
  if (!manifest) {
496
496
  log.info('Nenhum artifact encontrado. Rodando `neetru build`…');
497
- manifest = await runBuild({ product: productSlug, version: opts.version });
497
+ // bug_d80cbe84: passa --stack e --env-file do deploy pro build, para que
498
+ // `neetru deploy --stack=nextjs` não ignore a flag ao chamar runBuild
499
+ // internamente. Sem isso, o build sempre detectava a stack do cwd (podendo
500
+ // diferir do --stack pedido) e nunca recebia as vars de --env-file.
501
+ manifest = await runBuild({ product: productSlug, version: opts.version, stack: opts.stack, envFile: opts.envFile });
498
502
  }
499
503
  const tarAbs = path.resolve(cwd, manifest.tarball);
500
504
  if (keepLocal) {
@@ -574,9 +578,20 @@ async function resolveWorkspaceSource(opts, cwd) {
574
578
  'ou defina "source" no neetru.config.json.');
575
579
  safeExit(1);
576
580
  }
581
+ /**
582
+ * bug_eae4bef6: limiar acima do qual o source é enviado via GCS (signed URL)
583
+ * em vez de embutido no body JSON. Escolhemos 1.5 MiB, bem abaixo do limite
584
+ * default do Next.js de 4 MiB, para ter margem com o overhead JSON + outros
585
+ * campos. Arquivos acima deste limiar recebiam HTTP 413 do Core.
586
+ */
587
+ const WORKSPACE_SOURCE_GCS_THRESHOLD_BYTES = 1.5 * 1024 * 1024;
577
588
  /**
578
589
  * Deploy `target=workspace` — o Core builda (esbuild) e publica no runtime
579
590
  * compartilhado. Síncrono: o POST retorna com o desfecho (`live`/`failed`).
591
+ *
592
+ * bug_eae4bef6: se o source superar `WORKSPACE_SOURCE_GCS_THRESHOLD_BYTES`,
593
+ * fazemos upload via signed URL e passamos `sourceUrl` em vez de `source`
594
+ * inline. O Core aceita os dois (campo `sourceUrl` no schema).
580
595
  */
581
596
  async function runWorkspaceDeploy(opts, productSlug, envName, cwd, nonInteractive) {
582
597
  if (!WORKSPACE_ENVS.has(envName)) {
@@ -584,12 +599,16 @@ async function runWorkspaceDeploy(opts, productSlug, envName, cwd, nonInteractiv
584
599
  safeExit(1);
585
600
  }
586
601
  const source = await resolveWorkspaceSource(opts, cwd);
602
+ const sourceSizeBytes = Buffer.byteLength(source.content, 'utf8');
587
603
  if (!nonInteractive) {
588
604
  log.heading('Resumo');
589
605
  log.dim(` produto: ${productSlug}`);
590
606
  log.dim(` ambiente: ${envName}`);
591
607
  log.dim(' destino: workspace (runtime compartilhado)');
592
- log.dim(` source: ${source.relPath} (${Buffer.byteLength(source.content, 'utf8')} bytes)`);
608
+ log.dim(` source: ${source.relPath} (${sourceSizeBytes} bytes)`);
609
+ if (sourceSizeBytes > WORKSPACE_SOURCE_GCS_THRESHOLD_BYTES) {
610
+ log.dim(` upload: via GCS (source grande — acima de ${Math.round(WORKSPACE_SOURCE_GCS_THRESHOLD_BYTES / 1024)} KB)`);
611
+ }
593
612
  const { ok } = await inquirer.prompt([
594
613
  { type: 'confirm', name: 'ok', message: 'Confirmar deploy?', default: true },
595
614
  ]);
@@ -598,6 +617,74 @@ async function runWorkspaceDeploy(opts, productSlug, envName, cwd, nonInteractiv
598
617
  safeExit(0);
599
618
  }
600
619
  }
620
+ // bug_eae4bef6: fontes grandes vão via GCS pra evitar 413.
621
+ // Usamos o endpoint existente /api/cli/v1/deploy/upload-url (signed URL V4
622
+ // PUT). Enviamos o conteúdo UTF-8 do source como `text/plain;charset=utf-8`;
623
+ // o Core recebe pelo campo `sourceUrl` e baixa via Admin SDK.
624
+ let deployBody;
625
+ if (sourceSizeBytes > WORKSPACE_SOURCE_GCS_THRESHOLD_BYTES) {
626
+ const uploadSpinner = ora({
627
+ text: `Source grande (${(sourceSizeBytes / 1024).toFixed(0)} KB) — subindo via GCS…`,
628
+ color: 'blue',
629
+ }).start();
630
+ let uploadResult;
631
+ try {
632
+ uploadResult = await apiRequest('/api/cli/v1/deploy/upload-url', {
633
+ method: 'POST',
634
+ body: {
635
+ productId: productSlug,
636
+ env: envName,
637
+ filename: `source-${Date.now()}.ts`,
638
+ contentLength: sourceSizeBytes,
639
+ contentType: 'text/plain; charset=utf-8',
640
+ },
641
+ });
642
+ }
643
+ catch (err) {
644
+ uploadSpinner.fail('Falha ao obter signed URL para source.');
645
+ handleApiError(err);
646
+ }
647
+ // PUT direto pra GCS com o conteúdo do source.
648
+ try {
649
+ const sourceBuffer = Buffer.from(source.content, 'utf8');
650
+ const resp = await fetch(uploadResult.uploadUrl, {
651
+ method: 'PUT',
652
+ body: sourceBuffer,
653
+ headers: {
654
+ 'Content-Type': 'text/plain; charset=utf-8',
655
+ 'Content-Length': String(sourceSizeBytes),
656
+ },
657
+ ...{ duplex: 'half' },
658
+ });
659
+ if (!resp.ok) {
660
+ const text = await resp.text().catch(() => '');
661
+ throw new Error(`HTTP ${resp.status}${text ? ` — ${text.slice(0, 200)}` : ''}`);
662
+ }
663
+ uploadSpinner.succeed(`Source subido (${uploadResult.gcsPath}).`);
664
+ }
665
+ catch (uploadErr) {
666
+ uploadSpinner.fail(`Upload do source falhou: ${uploadErr.message}`);
667
+ handleApiError(uploadErr);
668
+ }
669
+ deployBody = {
670
+ productSlug,
671
+ version: opts.version ?? '0.0.0',
672
+ target: 'workspace',
673
+ environmentId: envName,
674
+ // gcsPath retornado pelo upload-url é o path `gs://bucket/object`.
675
+ sourceUrl: `gs://${uploadResult.bucket}/${uploadResult.objectPath}`,
676
+ };
677
+ }
678
+ else {
679
+ // Caminho normal (source pequeno, embutido inline no JSON).
680
+ deployBody = {
681
+ productSlug,
682
+ version: opts.version ?? '0.0.0',
683
+ target: 'workspace',
684
+ environmentId: envName,
685
+ source: source.content,
686
+ };
687
+ }
601
688
  const spinner = ora({
602
689
  text: 'Publicando no workspace (build + deploy)…',
603
690
  color: 'blue',
@@ -606,13 +693,7 @@ async function runWorkspaceDeploy(opts, productSlug, envName, cwd, nonInteractiv
606
693
  try {
607
694
  resp = await apiRequest('/api/cli/v1/deploy', {
608
695
  method: 'POST',
609
- body: {
610
- productSlug,
611
- version: opts.version ?? '0.0.0',
612
- target: 'workspace',
613
- environmentId: envName,
614
- source: source.content,
615
- },
696
+ body: deployBody,
616
697
  });
617
698
  }
618
699
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export interface DomainsListOptions {
2
+ product: string;
3
+ json?: boolean;
4
+ }
5
+ export declare function runDomainsList(opts: DomainsListOptions): Promise<void>;
6
+ export interface DomainsReconcileOptions {
7
+ product: string;
8
+ json?: boolean;
9
+ }
10
+ export declare function runDomainsReconcile(opts: DomainsReconcileOptions): Promise<void>;
11
+ export interface DomainsRetryOptions {
12
+ product: string;
13
+ sub: string;
14
+ json?: boolean;
15
+ }
16
+ export declare function runDomainsRetry(opts: DomainsRetryOptions): Promise<void>;
@@ -0,0 +1,211 @@
1
+ /**
2
+ * `neetru domains` — gerenciamento de domínios de ambiente de produto via CLI.
3
+ *
4
+ * Subcomandos:
5
+ * neetru domains list --product <slug> — lista subdomínios do produto
6
+ * neetru domains reconcile --product <slug> — garante domínios obrigatórios de todos os ambientes
7
+ * neetru domains retry --product <slug> --sub <label> — re-dispara ativação/cert de um subdomínio em erro
8
+ *
9
+ * Todos os comandos usam `apiRequest` do `api-client` — autenticação via
10
+ * Bearer token resolvido automaticamente do config local.
11
+ *
12
+ * A convenção de naming (quais estágios têm domínio, padrão FQDN) é decidida
13
+ * no Core — o CLI apenas aciona os endpoints. Não hardcodamos naming aqui.
14
+ *
15
+ * Plain PT-BR em todas as strings visíveis ao usuário.
16
+ */
17
+ import chalk from 'chalk';
18
+ import ora from 'ora';
19
+ import { log } from '../utils/logger.js';
20
+ import { apiRequest, CliApiError, CliNetworkError } from '../lib/api-client.js';
21
+ import { renderTable, fmtTimestamp } from '../lib/render.js';
22
+ import { printWriteResult, handleApiError } from '../lib/cli-write.js';
23
+ import { safeExit } from '../utils/safe-exit.js';
24
+ // ---------------------------------------------------------------------------
25
+ // Helpers de formatação
26
+ // ---------------------------------------------------------------------------
27
+ function subdomainStatusColor(status) {
28
+ switch (status) {
29
+ case 'active': return chalk.green(status);
30
+ case 'error': return chalk.red(status);
31
+ case 'provisioning': return chalk.yellow(status);
32
+ case 'pending_cert': return chalk.yellow(status);
33
+ case 'pending_vhost': return chalk.dim(status);
34
+ case 'inactive': return chalk.dim(status);
35
+ default: return chalk.dim(status);
36
+ }
37
+ }
38
+ function certStatusColor(certStatus) {
39
+ if (!certStatus)
40
+ return '—';
41
+ if (certStatus === 'active')
42
+ return chalk.green(certStatus);
43
+ if (certStatus === 'error')
44
+ return chalk.red(certStatus);
45
+ return chalk.dim(certStatus);
46
+ }
47
+ function outcomeColor(outcome) {
48
+ switch (outcome) {
49
+ case 'created': return chalk.green(outcome);
50
+ case 'existing': return chalk.dim(outcome);
51
+ case 'skipped': return chalk.yellow(outcome);
52
+ case 'error': return chalk.red(outcome);
53
+ default: return chalk.dim(outcome);
54
+ }
55
+ }
56
+ export async function runDomainsList(opts) {
57
+ if (!opts.product) {
58
+ log.error('--product <slug> é obrigatório.');
59
+ safeExit(1);
60
+ return;
61
+ }
62
+ log.banner();
63
+ const spinner = ora({ text: `Buscando domínios do produto "${opts.product}"…`, color: 'blue' }).start();
64
+ let resp;
65
+ try {
66
+ resp = await apiRequest(`/api/cli/v1/domains?productSlug=${encodeURIComponent(opts.product)}`);
67
+ spinner.stop();
68
+ }
69
+ catch (err) {
70
+ spinner.fail('Falha ao buscar domínios.');
71
+ handleApiError(err);
72
+ }
73
+ if (opts.json) {
74
+ console.log(JSON.stringify(resp, null, 2));
75
+ return;
76
+ }
77
+ log.heading(`Domínios do produto "${chalk.bold(opts.product)}" (${resp.count})`);
78
+ if (resp.count === 0) {
79
+ log.dim(' Nenhum subdomínio registrado.');
80
+ log.dim(` Dica: rode \`neetru domains reconcile --product ${opts.product}\` para criar os domínios obrigatórios.`);
81
+ return;
82
+ }
83
+ renderTable([
84
+ { header: 'Sub', value: (r) => r.sub, maxWidth: 18 },
85
+ { header: 'FQDN', value: (r) => r.fqdn, maxWidth: 44 },
86
+ { header: 'Status', value: (r) => subdomainStatusColor(r.status), maxWidth: 18 },
87
+ { header: 'Cert', value: (r) => certStatusColor(r.certStatus), maxWidth: 18 },
88
+ { header: 'Alvo', value: (r) => r.targetKind ?? '—', maxWidth: 14 },
89
+ { header: 'Porta', value: (r) => r.upstreamPort != null ? String(r.upstreamPort) : '—', maxWidth: 8 },
90
+ { header: 'VM', value: (r) => r.serverId ?? '—', maxWidth: 22 },
91
+ { header: 'Atualizado', value: (r) => fmtTimestamp(r.updatedAt), maxWidth: 20 },
92
+ ], resp.subdomains);
93
+ }
94
+ export async function runDomainsReconcile(opts) {
95
+ if (!opts.product) {
96
+ log.error('--product <slug> é obrigatório.');
97
+ safeExit(1);
98
+ return;
99
+ }
100
+ log.banner();
101
+ const spinner = ora({
102
+ text: `Reconciliando domínios de "${opts.product}"…`,
103
+ color: 'blue',
104
+ }).start();
105
+ let resp;
106
+ try {
107
+ resp = await apiRequest('/api/cli/v1/domains/reconcile', {
108
+ method: 'POST',
109
+ body: { productSlug: opts.product },
110
+ });
111
+ spinner.stop();
112
+ }
113
+ catch (err) {
114
+ spinner.fail('Falha ao reconciliar domínios.');
115
+ handleApiError(err);
116
+ }
117
+ if (opts.json) {
118
+ console.log(JSON.stringify(resp, null, 2));
119
+ return;
120
+ }
121
+ log.heading(`Reconcile — "${chalk.bold(resp.productSlug)}"`);
122
+ log.dim(` Ambientes processados: ${resp.environments}`);
123
+ log.dim(` Criados: ${chalk.green(String(resp.created))}`);
124
+ log.dim(` Existentes: ${chalk.dim(String(resp.existing))}`);
125
+ log.dim(` Pulados: ${chalk.yellow(String(resp.skipped))}`);
126
+ if (resp.errors > 0) {
127
+ log.warn(` Erros: ${chalk.red(String(resp.errors))}`);
128
+ }
129
+ if (resp.details.length > 0) {
130
+ log.dim('');
131
+ log.dim(' Detalhes por ambiente:');
132
+ renderTable([
133
+ { header: 'Ambiente', value: (r) => r.envType, maxWidth: 14 },
134
+ { header: 'Resultado', value: (r) => outcomeColor(r.outcome), maxWidth: 12 },
135
+ { header: 'FQDN', value: (r) => r.fqdn || '—', maxWidth: 44 },
136
+ { header: 'Status', value: (r) => subdomainStatusColor(r.status), maxWidth: 18 },
137
+ { header: 'Erro', value: (r) => r.err ?? '', maxWidth: 40 },
138
+ ], resp.details);
139
+ }
140
+ if (resp.created > 0) {
141
+ log.success(`${resp.created} subdomínio(s) criado(s). Execute \`neetru domains list --product ${opts.product}\` para ver o status.`);
142
+ }
143
+ else if (resp.errors === 0) {
144
+ log.success('Todos os domínios obrigatórios já existem.');
145
+ }
146
+ }
147
+ export async function runDomainsRetry(opts) {
148
+ if (!opts.product) {
149
+ log.error('--product <slug> é obrigatório.');
150
+ safeExit(1);
151
+ return;
152
+ }
153
+ if (!opts.sub) {
154
+ log.error('--sub <label> é obrigatório (ex: app, staging).');
155
+ safeExit(1);
156
+ return;
157
+ }
158
+ log.banner();
159
+ const spinner = ora({
160
+ text: `Re-ativando "${opts.sub}.${opts.product}.neetru.com"…`,
161
+ color: 'yellow',
162
+ }).start();
163
+ let resp;
164
+ try {
165
+ resp = await apiRequest('/api/cli/v1/domains/retry', {
166
+ method: 'POST',
167
+ body: { productSlug: opts.product, sub: opts.sub },
168
+ });
169
+ spinner.stop();
170
+ }
171
+ catch (err) {
172
+ spinner.fail('Falha ao re-ativar subdomínio.');
173
+ if (err instanceof CliApiError) {
174
+ if (err.status === 422) {
175
+ // Erros esperados do _core (sem VM, porta ausente, etc.) — exibe sem stack.
176
+ log.error(err.message);
177
+ safeExit(3);
178
+ return;
179
+ }
180
+ }
181
+ if (err instanceof CliNetworkError) {
182
+ log.error(`Falha de rede: ${err.message}`);
183
+ safeExit(4);
184
+ return;
185
+ }
186
+ handleApiError(err);
187
+ }
188
+ if (opts.json) {
189
+ console.log(JSON.stringify(resp, null, 2));
190
+ return;
191
+ }
192
+ printWriteResult({
193
+ id: resp.id,
194
+ status: resp.status,
195
+ phase: resp.phase,
196
+ certPending: resp.certPending ?? false,
197
+ commandId: resp.commandId ?? null,
198
+ }, resp.certPending
199
+ ? `Subdomínio em provisionamento — cert pendente. O Core vai despachar o cert_install quando o wildcard for emitido.`
200
+ : `Ativação disparada (${resp.phase}) — status: ${resp.status}.`, opts.json);
201
+ if (resp.note) {
202
+ log.dim(` Obs: ${resp.note}`);
203
+ }
204
+ if (resp.wildcard) {
205
+ log.dim(` Wildcard: ${resp.wildcard}`);
206
+ }
207
+ if (resp.commandId) {
208
+ log.dim(` Comando despachado: ${chalk.bold(resp.commandId)}`);
209
+ }
210
+ }
211
+ //# sourceMappingURL=domains.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domains.js","sourceRoot":"","sources":["../../src/commands/domains.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,14 @@
3
3
  *
4
4
  * Sprint 1: arquivo canônico é ~/.config/neetru-cli/auth.json.
5
5
  * Mantemos cleanup do Conf storage legado por compat com sessões antigas.
6
+ *
7
+ * feature mfa-session (2026-06-12): também apaga mfa-session.json para que
8
+ * a sessão MFA de 1h não persista após logout — a sessão MFA está atrelada
9
+ * ao Bearer token e não faz sentido sem ele.
6
10
  */
7
11
  import { config } from '../lib/config.js';
8
12
  import { clearToken, getAuthFilePath } from '../lib/auth.js';
13
+ import { clearMfaSession } from '../lib/cli-write.js';
9
14
  import { log } from '../utils/logger.js';
10
15
  export async function runLogout() {
11
16
  let removed = false;
@@ -16,6 +21,8 @@ export async function runLogout() {
16
21
  catch (err) {
17
22
  log.warn(`Falha ao remover ${getAuthFilePath()}: ${err.message}`);
18
23
  }
24
+ // Apaga sessão MFA de 1h — não deve sobreviver ao logout do Bearer token.
25
+ await clearMfaSession();
19
26
  if (config.get('neetruApiKey')) {
20
27
  config.delete('neetruApiKey');
21
28
  removed = true;
@@ -1 +1 @@
1
- {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,CAAC;QACH,IAAI,MAAM,UAAU,EAAE;YAAE,OAAO,GAAG,IAAI,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,oBAAoB,eAAe,EAAE,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC9B,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,IAAI,OAAO;QAAE,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;;QAC7C,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,CAAC;QACH,IAAI,MAAM,UAAU,EAAE;YAAE,OAAO,GAAG,IAAI,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,oBAAoB,eAAe,EAAE,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,0EAA0E;IAC1E,MAAM,eAAe,EAAE,CAAC;IAExB,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC9B,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,IAAI,OAAO;QAAE,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;;QAC7C,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;AACzC,CAAC"}
@@ -25,13 +25,18 @@ const DOCS_RECENT_LIMIT = 5;
25
25
  * server encontrado") — num REPL isso mataria o menu inteiro. Dentro de
26
26
  * `runTerminalUi` o `process.exit` é trocado por um throw deste erro, que o
27
27
  * `safeRun` captura: o CLI volta ao menu em vez de encerrar sozinho.
28
+ *
29
+ * O `message` é propositalmente vazio: uma string como `__command_exit__0`
30
+ * vazava pra UI do inquirer como `✖ __command_exit__0` quando o erro era
31
+ * lançado durante um prompt. O código de saída fica em `this.exitCode`.
28
32
  */
29
33
  class CommandExitError extends Error {
30
- code;
34
+ /** Código de saída original do `safeExit(code)` interceptado. */
35
+ exitCode;
31
36
  constructor(code) {
32
- super(`__command_exit__${code}`);
37
+ super('');
33
38
  this.name = 'CommandExitError';
34
- this.code = code;
39
+ this.exitCode = code;
35
40
  }
36
41
  }
37
42
  /**
@@ -589,7 +594,9 @@ async function projectMenu() {
589
594
  await quickstart();
590
595
  if (action === 'sdk')
591
596
  showSdkInfo();
592
- await pause();
597
+ // Sem pause() local aqui: safeRun() em runTerminalUi fornece o único
598
+ // "Enter para continuar" após a função retornar — evita duplo prompt quando
599
+ // o comando interno (runInit, quickstart) já exibe o seu próprio pause.
593
600
  }
594
601
  async function productsMenu() {
595
602
  for (;;) {
@@ -1080,7 +1087,7 @@ export async function runTerminalUi() {
1080
1087
  if (answer.action === 'overview')
1081
1088
  await safeRun(showOverview);
1082
1089
  if (answer.action === 'quickstart')
1083
- await safeRun(projectMenu, { pauseAfter: false });
1090
+ await safeRun(projectMenu);
1084
1091
  if (answer.action === 'products')
1085
1092
  await safeRun(productsMenu, { pauseAfter: false });
1086
1093
  if (answer.action === 'workspaces')