@neetru/cli 2.11.3 → 2.12.1

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 +561 -547
  2. package/README.md +33 -5
  3. package/dist/commands/ai.js +40 -15
  4. package/dist/commands/ai.js.map +1 -1
  5. package/dist/commands/auth.js +8 -0
  6. package/dist/commands/auth.js.map +1 -1
  7. package/dist/commands/autocomplete.js +34 -34
  8. package/dist/commands/config.js +13 -3
  9. package/dist/commands/config.js.map +1 -1
  10. package/dist/commands/db.d.ts +6 -0
  11. package/dist/commands/db.js +58 -0
  12. package/dist/commands/db.js.map +1 -1
  13. package/dist/commands/deploy.js +64 -7
  14. package/dist/commands/deploy.js.map +1 -1
  15. package/dist/commands/dev-up.d.ts +70 -0
  16. package/dist/commands/dev-up.js +224 -0
  17. package/dist/commands/dev-up.js.map +1 -0
  18. package/dist/commands/doctor.js +14 -2
  19. package/dist/commands/doctor.js.map +1 -1
  20. package/dist/commands/dr.js +8 -0
  21. package/dist/commands/dr.js.map +1 -1
  22. package/dist/commands/fn.d.ts +6 -0
  23. package/dist/commands/fn.js +88 -0
  24. package/dist/commands/fn.js.map +1 -0
  25. package/dist/commands/init.js +164 -121
  26. package/dist/commands/init.js.map +1 -1
  27. package/dist/commands/marketplace.d.ts +36 -0
  28. package/dist/commands/marketplace.js +585 -0
  29. package/dist/commands/marketplace.js.map +1 -0
  30. package/dist/commands/ops.d.ts +41 -9
  31. package/dist/commands/ops.js +371 -21
  32. package/dist/commands/ops.js.map +1 -1
  33. package/dist/index.js +38 -5
  34. package/dist/index.js.map +1 -1
  35. package/dist/lib/ai/auth-discovery.d.ts +7 -1
  36. package/dist/lib/ai/auth-discovery.js +23 -1
  37. package/dist/lib/ai/auth-discovery.js.map +1 -1
  38. package/dist/lib/ai/context.d.ts +0 -3
  39. package/dist/lib/ai/context.js +109 -90
  40. package/dist/lib/ai/context.js.map +1 -1
  41. package/dist/lib/ai/orchestrator.d.ts +43 -8
  42. package/dist/lib/ai/orchestrator.js +452 -150
  43. package/dist/lib/ai/orchestrator.js.map +1 -1
  44. package/dist/lib/api-client.js +9 -2
  45. package/dist/lib/api-client.js.map +1 -1
  46. package/dist/lib/config.d.ts +5 -1
  47. package/dist/lib/config.js +5 -1
  48. package/dist/lib/config.js.map +1 -1
  49. package/package.json +1 -1
  50. package/templates/auth/callback.ts +22 -22
  51. package/templates/auth/sign-in.tsx +41 -41
  52. package/templates/billing/checkout.ts +22 -22
  53. package/templates/billing/page.tsx +43 -43
  54. package/templates/support/ticket-form.tsx +68 -68
  55. package/templates/usage/track.ts +30 -30
  56. package/templates/users/profile.tsx +43 -43
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  <p>
6
6
  <img alt="npm" src="https://img.shields.io/npm/v/@neetru/cli?logo=npm">
7
7
  <img alt="downloads" src="https://img.shields.io/npm/dm/@neetru/cli?logo=npm">
8
- <img alt="Node" src="https://img.shields.io/badge/node-%3E%3D22-339933?logo=node.js&logoColor=white">
8
+ <img alt="Node" src="https://img.shields.io/badge/node-%3E%3D20-339933?logo=node.js&logoColor=white">
9
9
  <img alt="license" src="https://img.shields.io/badge/license-MIT-22c55e">
10
10
  </p>
11
11
 
@@ -58,8 +58,12 @@ Cria produto + workspace + scaffold local Next.js 15 + instala deps + abre cockp
58
58
  | `neetru env set --service=X --set KEY=VAL` | Setar env vars de serviço Cloud Run |
59
59
  | `neetru ar create <name>` | Criar repositório Artifact Registry |
60
60
  | `neetru hosting create-mapping --service=X --domain=Y` | Domain mapping |
61
- | `neetru db create --product=X --engine=postgres` | Criar banco por produto |
62
- | `neetru db engines` | Listar engines disponíveis (firestore, postgres, mysql) |
61
+ | `neetru admin database create --product-id=X --engine=cloud-sql-postgres` | Registrar banco isolado por produto (staff control plane) |
62
+ | `neetru admin database engines` | Listar engines suportados (`firestore-instance`, `cloud-sql-postgres`, `cloud-sql-mysql`, `vm-postgres-single`, `vm-mysql-single`, `nosql-vm`, …) |
63
+ | `neetru db init / apply / migrations` | Banco por produto no fluxo dev (registra + schema + migrations) |
64
+ | `neetru dev` | Banco Docker local + watch de schema (`salvar = aplicado`) |
65
+ | `neetru dev up` | **Emulador local completo** — Firebase Emulators + Core, 100% offline |
66
+ | `neetru dev exec <script>` | Roda `<script>` com emuladores ativos (CI sem credencial cloud) |
63
67
  | `neetru cloud-run pause/resume/delete <service>` | Controle Cloud Run |
64
68
  | `neetru products list/create/update` | Registry de produtos |
65
69
  | `neetru workspaces create/list/get/advance` | Instâncias por cliente |
@@ -86,6 +90,30 @@ Cria produto + workspace + scaffold local Next.js 15 + instala deps + abre cockp
86
90
 
87
91
  40+ subcomandos. Quase todos suportam `--json` pra automação.
88
92
 
93
+ ## Dev local — emulador (`neetru dev up`)
94
+
95
+ Ambiente de desenvolvimento **100% offline**, estilo Firebase Emulator Suite — sem tocar GCP/staging:
96
+
97
+ ```bash
98
+ # Na raiz do Core (onde tem firebase.json):
99
+ neetru dev up
100
+ # → sobe Firebase Emulators (Firestore :8080, Auth :9099, Functions :5001)
101
+ # → sobe o Core Next.js (:9003) apontando pros emuladores
102
+ # → Ctrl-C encerra os dois em cascata
103
+
104
+ # Seed portátil (compartilhe o estado entre devs via git):
105
+ neetru dev up --import .neetru-dev/seed --export-on-exit .neetru-dev/seed
106
+
107
+ # Só os emuladores (sem o Core):
108
+ neetru dev up --skip-core
109
+
110
+ # CI / teste de integração sem credencial cloud (propaga o exit code do script):
111
+ neetru dev exec "npm run test:integration"
112
+ ```
113
+
114
+ > `neetru dev` (sem subcomando) mantém o modo legado: banco Docker local + watch de schema.
115
+ > Flags: `--only firestore,auth,functions`, `--core-port 9003`, `--core-path <dir>`.
116
+
89
117
  ## Configuração
90
118
 
91
119
  Token Bearer fica em `~/.config/neetru-cli/auth.json` (chmod 0600 em Unix, NTFS ACL em Windows) — gerado por `neetru login` via OAuth Device Code Flow. Configs gerais ficam em `~/.config/neetru-cli/config.json` (Linux/macOS) ou `%APPDATA%\neetru-cli\config.json` (Windows):
@@ -125,9 +153,9 @@ neetru audit tail --json | jq 'select(.action | startswith("billing"))'
125
153
  ## Stack
126
154
 
127
155
  - TypeScript 5 ESM-first
128
- - Node 22+ (LTS)
156
+ - Node 20+ (`engines.node: >=20`; Node 22 LTS recomendado)
129
157
  - Sem `node-fetch`/`axios`: fetch global nativo
130
- - Commander 11 (CLI framework) + Inquirer 12 (prompts) + Chalk 5 + Ora (spinners)
158
+ - Commander 12 (CLI framework) + Inquirer 10 (prompts) + Chalk 5 + Ora (spinners)
131
159
 
132
160
  ## Mais info
133
161
 
@@ -10,15 +10,16 @@ const PROMPT_PREFIX = chalk.hex('#1E90FF').bold(' › ');
10
10
  const ASSISTANT_PREFIX = chalk.dim(' ◆ ');
11
11
  // Help público — sem /modelo (orchestrator escolhe). /debug:model é o
12
12
  // override avançado pra quem quer forçar.
13
- const HELP_TEXT = `
14
- Comandos:
15
- /sair /exit encerrar sessão
16
- /limpar /clear limpar histórico de contexto
17
- /agentes <pergunta> consultar 2+ modelos em paralelo e comparar
18
- /auth rodar wizard de configuração (claude/codex/gemini)
19
- /help mostrar este texto
20
- /debug:model <nome> forçar modelo (claude|openai|gemini|auto)
13
+ const HELP_TEXT = `
14
+ Comandos:
15
+ /sair /exit encerrar sessão
16
+ /limpar /clear limpar histórico de contexto
17
+ /agentes <pergunta> consultar 2+ modelos em paralelo e comparar
18
+ /auth rodar wizard de configuração (claude/codex/gemini)
19
+ /help mostrar este texto
20
+ /debug:model <nome> forçar modelo (claude|openai|gemini|groq|nvidia|auto)
21
21
  `.trim();
22
+ const DEBUG_MODELS = ['claude', 'openai', 'gemini', 'groq', 'nvidia', 'auto'];
22
23
  /**
23
24
  * Checa se o usuário tem pelo menos uma cred (local OU descoberta). Se zero,
24
25
  * roda o setup wizard inline antes de abrir o REPL.
@@ -28,23 +29,35 @@ async function ensureAtLeastOneProvider() {
28
29
  anthropic: !!config.get('anthropicApiKey'),
29
30
  openai: !!config.get('openaiApiKey'),
30
31
  gemini: !!config.get('geminiApiKey'),
32
+ groq: !!config.get('groqApiKey'),
33
+ nvidia: !!config.get('nvidiaApiKey'),
31
34
  };
32
- if (local.anthropic || local.openai || local.gemini)
35
+ if (local.anthropic || local.openai || local.gemini || local.groq || local.nvidia)
33
36
  return true;
34
37
  const discovered = discoveredKeys();
35
- if (discovered.anthropic || discovered.openai || discovered.gemini)
38
+ if (discovered.anthropic ||
39
+ discovered.openai ||
40
+ discovered.gemini ||
41
+ discovered.groq ||
42
+ discovered.nvidia) {
36
43
  return true;
44
+ }
37
45
  // Zero — força setup interativo.
38
46
  log.warn('Nenhum provedor de IA configurado.');
39
47
  log.info('Abrindo wizard de configuração...');
40
48
  await runAuthSetup();
41
49
  // Re-checa.
50
+ const disc = discoveredKeys();
42
51
  const after = !!config.get('anthropicApiKey') ||
43
52
  !!config.get('openaiApiKey') ||
44
53
  !!config.get('geminiApiKey') ||
45
- !!discoveredKeys().anthropic ||
46
- !!discoveredKeys().openai ||
47
- !!discoveredKeys().gemini;
54
+ !!config.get('groqApiKey') ||
55
+ !!config.get('nvidiaApiKey') ||
56
+ !!disc.anthropic ||
57
+ !!disc.openai ||
58
+ !!disc.gemini ||
59
+ !!disc.groq ||
60
+ !!disc.nvidia;
48
61
  return after;
49
62
  }
50
63
  export async function runAiRepl(opts = {}) {
@@ -65,6 +78,9 @@ export async function runAiRepl(opts = {}) {
65
78
  terminal: true,
66
79
  });
67
80
  const history = [];
81
+ // bug: histórico crescia ilimitado → context_window_exceeded em sessões longas.
82
+ // Janela deslizante: mantém as últimas HISTORY_WINDOW mensagens (par user+assistant).
83
+ const HISTORY_WINDOW = 40;
68
84
  let currentModel = opts.model ?? 'auto';
69
85
  let running = true;
70
86
  rl.on('close', () => {
@@ -100,12 +116,12 @@ export async function runAiRepl(opts = {}) {
100
116
  }
101
117
  if (input.startsWith('/debug:model ')) {
102
118
  const m = input.split(' ')[1];
103
- if (['claude', 'openai', 'gemini', 'auto'].includes(m)) {
119
+ if (DEBUG_MODELS.includes(m)) {
104
120
  currentModel = m;
105
121
  log.success(`Modelo forçado: ${m}`);
106
122
  }
107
123
  else {
108
- log.warn('Use: claude | openai | gemini | auto');
124
+ log.warn('Use: claude | openai | gemini | groq | nvidia | auto');
109
125
  }
110
126
  continue;
111
127
  }
@@ -136,6 +152,10 @@ export async function runAiRepl(opts = {}) {
136
152
  continue;
137
153
  }
138
154
  // ── Chat normal ────────────────────────────────────────────────
155
+ // Aviso proativo antes de chegar no limite (quando sobrar só 4 turnos).
156
+ if (history.length >= HISTORY_WINDOW - 4 && history.length % 2 === 0) {
157
+ log.warn(`Histórico longo (${history.length} msgs). Use /limpar pra reiniciar o contexto.`);
158
+ }
139
159
  history.push({ role: 'user', content: input });
140
160
  console.log();
141
161
  process.stdout.write(ASSISTANT_PREFIX);
@@ -154,6 +174,11 @@ export async function runAiRepl(opts = {}) {
154
174
  console.log();
155
175
  if (fullResponse) {
156
176
  history.push({ role: 'assistant', content: fullResponse });
177
+ // Janela deslizante: descarta turnos mais antigos quando excede o limite.
178
+ // Sempre remove em pares (user+assistant) pra manter histórico consistente.
179
+ while (history.length > HISTORY_WINDOW) {
180
+ history.splice(0, 2);
181
+ }
157
182
  }
158
183
  }
159
184
  rl.close();
@@ -1 +1 @@
1
- {"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/commands/ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/commands/ai.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,8 @@ const PROVIDER_TO_CONFIG = {
20
20
  anthropic: 'anthropicApiKey',
21
21
  openai: 'openaiApiKey',
22
22
  gemini: 'geminiApiKey',
23
+ groq: 'groqApiKey',
24
+ nvidia: 'nvidiaApiKey',
23
25
  };
24
26
  function badge(s) {
25
27
  if (s.apiKey)
@@ -38,6 +40,10 @@ function rowName(p) {
38
40
  return 'Codex (OpenAI)';
39
41
  case 'gemini':
40
42
  return 'Gemini (Google)';
43
+ case 'groq':
44
+ return 'Groq';
45
+ case 'nvidia':
46
+ return 'NVIDIA NIM';
41
47
  }
42
48
  }
43
49
  /**
@@ -49,6 +55,8 @@ export async function runAuthStatus(opts = {}) {
49
55
  anthropic: !!config.get('anthropicApiKey'),
50
56
  openai: !!config.get('openaiApiKey'),
51
57
  gemini: !!config.get('geminiApiKey'),
58
+ groq: !!config.get('groqApiKey'),
59
+ nvidia: !!config.get('nvidiaApiKey'),
52
60
  };
53
61
  if (opts.json) {
54
62
  console.log(JSON.stringify({
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/commands/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/commands/auth.ts"],"names":[],"mappings":"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"}
@@ -84,49 +84,49 @@ export const TOP_LEVEL_COMMANDS = [
84
84
  ];
85
85
  function bashScript() {
86
86
  const cmds = TOP_LEVEL_COMMANDS.join(' ');
87
- return `# neetru CLI bash completion (v2.10.2)
88
- _neetru_complete() {
89
- local cur prev
90
- COMPREPLY=()
91
- cur="\${COMP_WORDS[COMP_CWORD]}"
92
- prev="\${COMP_WORDS[COMP_CWORD-1]}"
93
- if [ \${COMP_CWORD} -eq 1 ]; then
94
- COMPREPLY=( $(compgen -W "${cmds}" -- "\${cur}") )
95
- return 0
96
- fi
97
- }
98
- complete -F _neetru_complete neetru
87
+ return `# neetru CLI bash completion (v2.10.2)
88
+ _neetru_complete() {
89
+ local cur prev
90
+ COMPREPLY=()
91
+ cur="\${COMP_WORDS[COMP_CWORD]}"
92
+ prev="\${COMP_WORDS[COMP_CWORD-1]}"
93
+ if [ \${COMP_CWORD} -eq 1 ]; then
94
+ COMPREPLY=( $(compgen -W "${cmds}" -- "\${cur}") )
95
+ return 0
96
+ fi
97
+ }
98
+ complete -F _neetru_complete neetru
99
99
  `;
100
100
  }
101
101
  function zshScript() {
102
102
  // Formato compsys do zsh.
103
103
  const cmds = TOP_LEVEL_COMMANDS.map((c) => ` '${c}'`).join('\n');
104
- return `#compdef neetru
105
- # neetru CLI zsh completion (v2.10.2)
106
- _neetru() {
107
- local -a commands
108
- commands=(
109
- ${cmds}
110
- )
111
- if (( CURRENT == 2 )); then
112
- _describe 'command' commands
113
- fi
114
- }
115
- _neetru "$@"
104
+ return `#compdef neetru
105
+ # neetru CLI zsh completion (v2.10.2)
106
+ _neetru() {
107
+ local -a commands
108
+ commands=(
109
+ ${cmds}
110
+ )
111
+ if (( CURRENT == 2 )); then
112
+ _describe 'command' commands
113
+ fi
114
+ }
115
+ _neetru "$@"
116
116
  `;
117
117
  }
118
118
  function pwshScript() {
119
119
  const cmds = TOP_LEVEL_COMMANDS.map((c) => ` '${c}'`).join(',\n');
120
- return `# neetru CLI PowerShell completion (v2.10.2)
121
- Register-ArgumentCompleter -Native -CommandName neetru -ScriptBlock {
122
- param($wordToComplete, $commandAst, $cursorPosition)
123
- $commands = @(
124
- ${cmds}
125
- )
126
- $commands | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
127
- [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_)
128
- }
129
- }
120
+ return `# neetru CLI PowerShell completion (v2.10.2)
121
+ Register-ArgumentCompleter -Native -CommandName neetru -ScriptBlock {
122
+ param($wordToComplete, $commandAst, $cursorPosition)
123
+ $commands = @(
124
+ ${cmds}
125
+ )
126
+ $commands | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
127
+ [System.Management.Automation.CompletionResult]::new($_, $_, 'ParameterValue', $_)
128
+ }
129
+ }
130
130
  `;
131
131
  }
132
132
  export function generateAutocompleteScript(shell) {
@@ -7,6 +7,11 @@ const SETTABLE_KEYS = [
7
7
  'anthropicApiKey',
8
8
  'openaiApiKey',
9
9
  'geminiApiKey',
10
+ // Groq + NVIDIA NIM (OpenAI-compatible). Valor pode ser pool comma-separated.
11
+ 'groqApiKey',
12
+ 'nvidiaApiKey',
13
+ 'groqModel',
14
+ 'nvidiaModel',
10
15
  'neetruApiKey',
11
16
  'neetruApiUrl',
12
17
  'defaultModel',
@@ -64,10 +69,15 @@ export function configSet(key, value, opts = {}) {
64
69
  config.set(key, coerced);
65
70
  // Ofusca chaves de API no log
66
71
  const display = key.toLowerCase().includes('key') && typeof coerced === 'string'
67
- ? coerced.slice(0, 8) + '...' + coerced.slice(-4)
72
+ ? maskSecret(coerced)
68
73
  : String(coerced);
69
74
  log.success(`${key} = ${display}`);
70
75
  }
76
+ // Ofusca segredo preservando só prefixo+sufixo. Chave curta (<=12) seria
77
+ // EXPOSTA por slice(0,8)+slice(-4) sobrepostos -> redação total nesse caso.
78
+ function maskSecret(s) {
79
+ return s.length > 12 ? `${s.slice(0, 8)}...${s.slice(-4)}` : '***';
80
+ }
71
81
  export function configGet(key) {
72
82
  if (key) {
73
83
  const val = config.get(key);
@@ -76,7 +86,7 @@ export function configGet(key) {
76
86
  }
77
87
  else {
78
88
  const display = key.toLowerCase().includes('key') && typeof val === 'string'
79
- ? val.slice(0, 8) + '...' + val.slice(-4)
89
+ ? maskSecret(val)
80
90
  : val;
81
91
  console.log(` ${key}: ${display}`);
82
92
  }
@@ -90,7 +100,7 @@ export function configGet(key) {
90
100
  }
91
101
  else {
92
102
  const display = k.toLowerCase().includes('key') && typeof val === 'string'
93
- ? val.slice(0, 8) + '...' + val.slice(-4)
103
+ ? maskSecret(val)
94
104
  : val;
95
105
  log.info(`${k}: ${display}`);
96
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,12 @@ export interface DbInitOptions {
14
14
  engine?: string;
15
15
  env?: string;
16
16
  productId?: string;
17
+ /**
18
+ * bug_062f7fea (pdv-agiliza): engines vm-* (e nosql-vm) exigem o serverId da
19
+ * VM host — o Core rejeita register sem ele. Coletado via --server-id, prompt
20
+ * interativo (lista de VM hosts) ou erro em modo não-interativo.
21
+ */
22
+ serverId?: string;
17
23
  yes?: boolean;
18
24
  /** gestovendas #9: saída em JSON para integração CI/automação. */
19
25
  json?: boolean;
@@ -403,6 +403,61 @@ export async function runDbInit(opts = {}) {
403
403
  safeExit(1);
404
404
  return;
405
405
  }
406
+ // ── bug_062f7fea (pdv-agiliza): engines vm-* (+ nosql-vm) exigem serverId ──
407
+ // O Core rejeita register sem serverId pra essas famílias (a VM host onde o
408
+ // banco roda). Coletamos via --server-id, prompt interativo (lista de VM
409
+ // hosts), ou erro claro em modo não-interativo (--yes/--json).
410
+ const isVmEngine = engine.startsWith('vm-') || engine === 'nosql-vm';
411
+ let serverId = opts.serverId?.trim() || undefined;
412
+ if (isVmEngine && !serverId) {
413
+ if (opts.yes || opts.json) {
414
+ const msg = `Engine "${engine}" roda em VM e exige --server-id (a VM host onde o banco ` +
415
+ `será instalado). Liste as VMs com: neetru db hosts`;
416
+ if (opts.json) {
417
+ jsonError(msg, 'server_id_required');
418
+ }
419
+ else {
420
+ log.error(msg);
421
+ }
422
+ safeExit(1);
423
+ return;
424
+ }
425
+ // Interativo: busca VM hosts e deixa escolher; fallback p/ input livre.
426
+ let hosts = [];
427
+ try {
428
+ const resp = await apiRequest('/api/cli/v1/servers?capacity=true&db=true');
429
+ const DEAD = /delet|archiv|fail|timeout|provision_failed|desconhec/i;
430
+ hosts = (resp.servers ?? []).filter((h) => !h.status || !DEAD.test(h.status));
431
+ }
432
+ catch {
433
+ // segue pro fallback de input livre
434
+ }
435
+ if (hosts.length > 0) {
436
+ const { sid } = await inquirer.prompt([
437
+ {
438
+ type: 'list',
439
+ name: 'sid',
440
+ message: `Servidor (VM) host pra "${engine}":`,
441
+ choices: hosts.map((h) => ({
442
+ name: `${h.name ?? h.id} ${chalk.dim('(' + h.id + (h.status ? ', ' + h.status : '') + ')')}`,
443
+ value: h.id,
444
+ })),
445
+ },
446
+ ]);
447
+ serverId = sid;
448
+ }
449
+ else {
450
+ const { sid } = await inquirer.prompt([
451
+ {
452
+ type: 'input',
453
+ name: 'sid',
454
+ message: `serverId da VM host pra "${engine}" (nenhuma VM listada — informe o id):`,
455
+ validate: (v) => v.trim().length > 0 || 'serverId é obrigatório pra engines vm-*',
456
+ },
457
+ ]);
458
+ serverId = sid.trim();
459
+ }
460
+ }
406
461
  // ── HIGH-3: registra o banco no Core ANTES de gravar o stub local.
407
462
  // Gravar localmente antes e deixar o registro falhar resultava em entrada
408
463
  // órfã em .neetru/db.json — re-rodar db init adicionava banco duplicado.
@@ -443,6 +498,9 @@ export async function runDbInit(opts = {}) {
443
498
  label: dbName,
444
499
  engine,
445
500
  provisioning: buildProvisioningPayload(engine),
501
+ // bug_062f7fea: serverId no top-level do payload p/ engines vm-* (o Core
502
+ // valida isVmEngine(engine) && !serverId → register_failed).
503
+ ...(serverId ? { serverId } : {}),
446
504
  },
447
505
  });
448
506
  registerSpinner?.succeed('Banco registrado no Core.');