@neetru/cli 2.26.1 → 2.26.3
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 +49 -0
- package/README.md +14 -1
- package/dist/commands/build.d.ts +18 -0
- package/dist/commands/build.js +135 -17
- package/dist/commands/build.js.map +1 -1
- package/dist/commands/db.d.ts +7 -0
- package/dist/commands/db.js +15 -1
- package/dist/commands/db.js.map +1 -1
- package/dist/commands/deploy.d.ts +34 -0
- package/dist/commands/deploy.js +38 -4
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/env.d.ts +8 -0
- package/dist/commands/env.js +7 -1
- package/dist/commands/env.js.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/db-pipeline/build-deps.d.ts +26 -1
- package/dist/lib/db-pipeline/build-deps.js +65 -23
- package/dist/lib/db-pipeline/build-deps.js.map +1 -1
- package/dist/lib/db-pipeline/rehearse.js +12 -0
- package/dist/lib/db-pipeline/rehearse.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,55 @@
|
|
|
2
2
|
|
|
3
3
|
Convenção: [Keep a Changelog](https://keepachangelog.com/) + [SemVer](https://semver.org/).
|
|
4
4
|
|
|
5
|
+
## [2.26.3] — 2026-07-27 (bug_pdv_rehearse: guards de segurança do `generate` + retry no bootstrap + `--skip-rehearse` real)
|
|
6
|
+
|
|
7
|
+
> Incidente pdv-agiliza: `neetru db apply` reemitia `CREATE TYPE` puro (sem guard) a cada tentativa, colidindo com "already exists" assim que o tipo existisse por qualquer via — editar o `.sql` local não resolvia (o pipeline nunca lê esses arquivos, sempre gera DDL do zero a partir do `schema.ts`).
|
|
8
|
+
|
|
9
|
+
### Corrigido
|
|
10
|
+
|
|
11
|
+
- `generateSql` volta de `drizzle-kit export` pra `drizzle-kit generate` (apontando `--out` pra um diretório temporário, lendo o `.sql` do disco em vez do stdout — preserva o fix do bug_c7842bbe original de banner no stdout). `export` não aplica os guards de segurança que `generate` inclui por padrão (`CREATE TYPE` vira `DO $$ ... EXCEPTION WHEN duplicate_object THEN null; END $$;`); `generate` sim.
|
|
12
|
+
- `isTransientDbError` (rehearse do Postgres/MySQL efêmero) agora reconhece a corrida "servidor temporário de init aceita conexão antes do script `CREATE DATABASE`/`MYSQL_DATABASE` terminar" — `FATAL: database ... does not exist` / `Unknown database` — e re-tenta em vez de falhar direto.
|
|
13
|
+
|
|
14
|
+
### Adicionado
|
|
15
|
+
|
|
16
|
+
- `neetru db apply --skip-rehearse` — pula o ensaio local em container Docker efêmero. Loga aviso explícito (não é silencioso); a DDL não-testada ainda roda contra a VM real via Core/agente.
|
|
17
|
+
|
|
18
|
+
## [2.26.2] — 2026-07-22 (fix crítico: `.env.local` vencendo `.env.production` desativava login real em produção)
|
|
19
|
+
|
|
20
|
+
> Incidente pdv-agiliza: o botão "Entrar com Neetru" não fazia nada em produção — o Next.js carrega `.env.local` antes de `.env.production`, e valores já definidos não são sobrescritos por arquivos carregados depois. Um `.env.local` esquecido no disco do dev (com `NEXT_PUBLIC_NEETRU_ENV=dev`) vencia silenciosamente `.env.production`, compilando o bundle de produção com o SDK em modo `MockAuth` (que só finge login em memória, nunca navega pro IdP real).
|
|
21
|
+
|
|
22
|
+
### Corrigido
|
|
23
|
+
|
|
24
|
+
- `neetru build` (stacks `node` e `static`) agora **sempre força `NEXT_PUBLIC_NEETRU_ENV=<targetEnv>` via spawn-env** ao rodar o script `build` do produto — dotenv/Next.js nunca sobrescreve uma env var já presente no `process.env` do processo filho, então isso neutraliza `.env.local` sem tocar em nenhum arquivo do disco do dev. Automático, sem ação do dev.
|
|
25
|
+
- `neetru deploy` agora repassa o `--env` do deploy (`dev`/`staging`/`prod`) pro build implícito quando não há artifact em cache (antes sempre forçava `prod` incondicionalmente).
|
|
26
|
+
|
|
27
|
+
### Adicionado
|
|
28
|
+
|
|
29
|
+
- `neetru build --target-env <dev|workspace|prod>` (default `prod`) — validado contra o mesmo enum/alias de `neetru env switch` (aceita `production` → `prod`).
|
|
30
|
+
- Validação pós-build: `neetru build` lê `.next/neetru-build-manifest.json` (gravado por `withNeetruBuildGuard`, `@neetru/sdk >= 3.1.15`) e **recusa empacotar o tarball** se o env realmente compilado divergir do esperado. Manifesto ausente = warning, não bloqueia (rollout gradual).
|
|
31
|
+
|
|
32
|
+
## [2.26.1] — 2026-07-20 (P6 — CLI não envia porta em deploy VM)
|
|
33
|
+
|
|
34
|
+
- Deploy `--target vm` para de enviar `--port` (porta é gerenciada pelo Core/agente na VM, não pelo dev).
|
|
35
|
+
|
|
36
|
+
## [2.26.0] — 2026-07-18
|
|
37
|
+
|
|
38
|
+
### Adicionado
|
|
39
|
+
|
|
40
|
+
- `neetru webhooks` — `register` / `list` / `unregister` / `test` / `deliveries`.
|
|
41
|
+
|
|
42
|
+
## [2.25.0] — 2026-07-16
|
|
43
|
+
|
|
44
|
+
### Corrigido
|
|
45
|
+
|
|
46
|
+
- `dev-up`: remove dead-code do pivô Docker Compose, suite de testes verde, imagem pinada.
|
|
47
|
+
|
|
48
|
+
## [2.24.1] — 2026-07-14
|
|
49
|
+
|
|
50
|
+
### Adicionado
|
|
51
|
+
|
|
52
|
+
- `neetru deployments watch` / `neetru deployments logs`.
|
|
53
|
+
|
|
5
54
|
## [2.24.0] — 2026-07-13 (contexto dev-local: `neetru dev use/status/sync`)
|
|
6
55
|
|
|
7
56
|
> Trabalho do Codex nesta sessão (mesmo repo, frente separada do `neetru code`).
|
package/README.md
CHANGED
|
@@ -52,7 +52,7 @@ Cria produto + workspace + scaffold local Next.js 15 + instala deps + abre cockp
|
|
|
52
52
|
| `neetru init <name>` | Só scaffold local Next.js + Firebase |
|
|
53
53
|
| `neetru add <feature>` | Adicionar features ao scaffold (auth, billing, etc) |
|
|
54
54
|
| `neetru deploy` | Pipeline de deploy interativo (cloud-run / vm / workspace) |
|
|
55
|
-
| `neetru build` | Empacotar produto em tarball pra deploy |
|
|
55
|
+
| `neetru build [--stack ...] [--target-env dev\|workspace\|prod] [--env-file ...] [--no-cache] [--no-install]` | Empacotar produto em tarball pra deploy |
|
|
56
56
|
| `neetru promote` | Promover dev → staging → prod |
|
|
57
57
|
| `neetru env switch <target>` | Trocar `NEETRU_ENV` no `.env.local` |
|
|
58
58
|
| `neetru env set --service=X --set KEY=VAL` | Setar env vars de serviço Cloud Run |
|
|
@@ -131,6 +131,19 @@ neetru dev sync --write-db
|
|
|
131
131
|
> Flags: `--only firestore,auth,functions`, `--core-port 9003`, `--core-path <dir>`.
|
|
132
132
|
> O arquivo `.neetru/dev.json` guarda o contexto local: produto Core ou protótipo, Core path e emuladores padrão.
|
|
133
133
|
|
|
134
|
+
## Build — env do bundle (`NEXT_PUBLIC_NEETRU_ENV`)
|
|
135
|
+
|
|
136
|
+
`neetru build` sempre serve pra gerar artefato de **deploy** — nunca pra dev local (isso é `next dev`/`neetru dev up`). Por isso, pra stacks `node`/`static` (produtos Next.js), o build **sempre força `NEXT_PUBLIC_NEETRU_ENV=<targetEnv>`** via spawn-env no processo do `npm run build` — default `prod`, sem nenhuma ação do dev:
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
neetru build --product=meu-produto # NEXT_PUBLIC_NEETRU_ENV=prod (default)
|
|
140
|
+
neetru build --product=meu-produto --target-env=workspace
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
Isso existe porque o Next.js carrega `.env.local` (arquivo do disco do dev, nunca deletado) **antes** de `.env.production` — e valores já definidos não são sobrescritos por arquivos carregados depois. Sem essa proteção, um `.env.local` esquecido com `NEETRU_ENV=dev` fazia o bundle de PRODUÇÃO compilar com o SDK Neetru em modo mock (`MockAuth`), desativando o login real silenciosamente (incidente pdv-agiliza, 2026-07-22).
|
|
144
|
+
|
|
145
|
+
Se o produto envolver `next.config.mjs` com `withNeetruBuildGuard` (`@neetru/sdk/build-guard`, `@neetru/sdk >= 3.1.15`), `neetru build` confere pós-build que o env realmente compilado bate com o esperado — e **recusa empacotar o tarball** se divergir, em vez de deployar um bundle quebrado silenciosamente.
|
|
146
|
+
|
|
134
147
|
## Configuração
|
|
135
148
|
|
|
136
149
|
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):
|
package/dist/commands/build.d.ts
CHANGED
|
@@ -17,6 +17,24 @@ export interface BuildOptions {
|
|
|
17
17
|
* não é enviado ao Core.
|
|
18
18
|
*/
|
|
19
19
|
envFile?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Ambiente alvo do bundle `NEXT_PUBLIC_NEETRU_ENV` pra builds de stack
|
|
22
|
+
* node/nextjs. Default `'prod'` — `neetru build` sempre serve pra gerar
|
|
23
|
+
* artefato de deploy (dev local usa `next dev`/`neetru dev up`, nunca
|
|
24
|
+
* `neetru build`). Flag existe só pra casos raros (ex: tarball de teste
|
|
25
|
+
* intencionalmente em modo dev).
|
|
26
|
+
*
|
|
27
|
+
* Fix bug crítico (2026-07-22, incidente pdv-agiliza): sem isso,
|
|
28
|
+
* `.env.local` (fica no disco do dev, nunca deletado) vencia
|
|
29
|
+
* `.env.production` na precedência de env do Next.js pra
|
|
30
|
+
* `NEXT_PUBLIC_NEETRU_ENV` — o bundle de PRODUÇÃO compilava com
|
|
31
|
+
* `env=dev`, ativando `MockAuth` no browser (o botão "Entrar com Neetru"
|
|
32
|
+
* não fazia nada, porque `MockAuth.signIn()` só finge login em memória,
|
|
33
|
+
* nunca navega pro IdP real). `neetru build` agora injeta este valor via
|
|
34
|
+
* spawn-env (que dotenv/Next.js NUNCA sobrescreve a partir de arquivo)
|
|
35
|
+
* — neutraliza o arquivo ambiente sem tocar em nada no disco do dev.
|
|
36
|
+
*/
|
|
37
|
+
targetEnv?: 'dev' | 'workspace' | 'prod';
|
|
20
38
|
}
|
|
21
39
|
export interface BuildManifest {
|
|
22
40
|
slug: string;
|
package/dist/commands/build.js
CHANGED
|
@@ -27,6 +27,7 @@ import chalk from 'chalk';
|
|
|
27
27
|
import ora from 'ora';
|
|
28
28
|
import { log } from '../utils/logger.js';
|
|
29
29
|
import { safeExit } from '../utils/safe-exit.js';
|
|
30
|
+
import { normalizeTarget } from './env.js';
|
|
30
31
|
import { registerSpinner, unregisterSpinner } from '../utils/spinner-registry.js';
|
|
31
32
|
const CONFIG_FILENAMES = ['neetru.config.json', '.neetru.json'];
|
|
32
33
|
function fileExists(p) {
|
|
@@ -359,7 +360,7 @@ async function loadEnvFile(envFile) {
|
|
|
359
360
|
}
|
|
360
361
|
return vars;
|
|
361
362
|
}
|
|
362
|
-
async function buildNode(cwd, noCache, noInstall = false, extraEnv) {
|
|
363
|
+
async function buildNode(cwd, noCache, noInstall = false, extraEnv, targetEnv = 'prod') {
|
|
363
364
|
const pkgPath = path.join(cwd, 'package.json');
|
|
364
365
|
if (!fileExists(pkgPath))
|
|
365
366
|
throw new Error('Stack node sem package.json.');
|
|
@@ -391,6 +392,15 @@ async function buildNode(cwd, noCache, noInstall = false, extraEnv) {
|
|
|
391
392
|
await runCmd('npm', ['install', '--no-save', '--no-audit', '--no-fund'], cwd);
|
|
392
393
|
}
|
|
393
394
|
if (pkg.scripts?.build) {
|
|
395
|
+
// Fix crítico (2026-07-22, incidente pdv-agiliza): `NEXT_PUBLIC_NEETRU_ENV`
|
|
396
|
+
// SEMPRE é forçado via spawn-env — dotenv/Next.js nunca sobrescreve uma env
|
|
397
|
+
// var que já chegou pronta no process.env do processo filho, então isso
|
|
398
|
+
// neutraliza `.env.local` (fica no disco do dev) vencendo `.env.production`
|
|
399
|
+
// na precedência do Next.js. Prioridade máxima: sobrescreve até um valor
|
|
400
|
+
// divergente vindo de --env-file/env-prefix Unix, de propósito — o objetivo
|
|
401
|
+
// é ter uma ÚNICA fonte de verdade pro env do bundle, não múltiplas.
|
|
402
|
+
const forcedEnv = { NEXT_PUBLIC_NEETRU_ENV: targetEnv };
|
|
403
|
+
log.dim(` NEXT_PUBLIC_NEETRU_ENV forçado via spawn-env: ${targetEnv} (neutraliza .env.local — incidente pdv-agiliza 2026-07-22)`);
|
|
394
404
|
// Fix bug_0cf14fba + bug_893891f (27/05): em Windows, cmd.exe não entende
|
|
395
405
|
// prefixo de env Unix (ex: "NODE_ENV=production next build"). Antes:
|
|
396
406
|
// warning + run mesmo assim + falha. Agora: detect + parse + roda direto
|
|
@@ -398,11 +408,11 @@ async function buildNode(cwd, noCache, noInstall = false, extraEnv) {
|
|
|
398
408
|
// do package.json.
|
|
399
409
|
//
|
|
400
410
|
// bug_25ff8581: extraEnv (de --env-file) é mesclado com as vars Unix-prefix
|
|
401
|
-
// detectadas (prioridade: Unix-prefix sobrescreve env-file em conflito
|
|
411
|
+
// detectadas (prioridade: Unix-prefix sobrescreve env-file em conflito;
|
|
412
|
+
// forcedEnv por cima de tudo — ver comentário acima).
|
|
402
413
|
if (process.platform === 'win32' && detectsUnixEnvPrefix(pkg.scripts.build)) {
|
|
403
414
|
const { env: prefixEnv, cmd } = parseUnixEnvPrefix(pkg.scripts.build);
|
|
404
|
-
|
|
405
|
-
const mergedEnv = { ...(extraEnv ?? {}), ...prefixEnv };
|
|
415
|
+
const mergedEnv = { ...(extraEnv ?? {}), ...prefixEnv, ...forcedEnv };
|
|
406
416
|
log.info(`Script "build" usa env-prefix Unix. Auto-injetando ${Object.keys(mergedEnv).join('+')} via spawn-env (compat Windows).`);
|
|
407
417
|
log.dim(` Original: ${pkg.scripts.build}`);
|
|
408
418
|
log.dim(` Executando: ${cmd} (com env: ${JSON.stringify(mergedEnv)})`);
|
|
@@ -414,19 +424,82 @@ async function buildNode(cwd, noCache, noInstall = false, extraEnv) {
|
|
|
414
424
|
// npx <bin> respeita node_modules/.bin; se nao tem bin local, fallback ao PATH.
|
|
415
425
|
await runCmd('npx', [bin, ...args], cwd, mergedEnv);
|
|
416
426
|
}
|
|
417
|
-
else if (extraEnv && Object.keys(extraEnv).length > 0) {
|
|
418
|
-
// bug_25ff8581: vars de --env-file injetadas via spawn-env (evita editar
|
|
419
|
-
// package.json; funciona em todos os SOs).
|
|
420
|
-
log.info(`Injetando ${Object.keys(extraEnv).length} var(s) de env-file: ${Object.keys(extraEnv).join(', ')}`);
|
|
421
|
-
await runCmd('npm', ['run', 'build'], cwd, extraEnv);
|
|
422
|
-
}
|
|
423
427
|
else {
|
|
424
|
-
|
|
425
|
-
|
|
428
|
+
const mergedEnv = { ...(extraEnv ?? {}), ...forcedEnv };
|
|
429
|
+
if (extraEnv && Object.keys(extraEnv).length > 0) {
|
|
430
|
+
// bug_25ff8581: vars de --env-file injetadas via spawn-env (evita editar
|
|
431
|
+
// package.json; funciona em todos os SOs).
|
|
432
|
+
log.info(`Injetando ${Object.keys(extraEnv).length} var(s) de env-file: ${Object.keys(extraEnv).join(', ')}`);
|
|
433
|
+
}
|
|
434
|
+
else {
|
|
435
|
+
log.info('npm run build…');
|
|
436
|
+
}
|
|
437
|
+
await runCmd('npm', ['run', 'build'], cwd, mergedEnv);
|
|
426
438
|
}
|
|
427
439
|
}
|
|
428
440
|
return { entrypoint: pkg.main ?? 'index.js' };
|
|
429
441
|
}
|
|
442
|
+
/**
|
|
443
|
+
* Sinal de abort específico do guard de env — NUNCA `safeExit` direto daqui
|
|
444
|
+
* dentro (achado da revisão adversarial: `validateBuildEnvManifest` roda
|
|
445
|
+
* dentro do `try` de `runBuild`; chamar `safeExit` aqui fazia o
|
|
446
|
+
* sinal escapar pro `catch` genérico, que reprocessava como falha de build
|
|
447
|
+
* comum — "Falha no build: undefined" — e chamava `safeExit(1)` DE NOVO).
|
|
448
|
+
* `runBuild` reconhece esta classe e sai UMA única vez, sem mensagem
|
|
449
|
+
* duplicada.
|
|
450
|
+
*/
|
|
451
|
+
class BuildEnvGuardAbort extends Error {
|
|
452
|
+
}
|
|
453
|
+
/**
|
|
454
|
+
* Confere, DEPOIS do `next build` e ANTES de empacotar o tarball, que o
|
|
455
|
+
* bundle compilado realmente refletiu `targetEnv` — lendo
|
|
456
|
+
* `.next/neetru-build-manifest.json` (gravado por `withNeetruBuildGuard`,
|
|
457
|
+
* `@neetru/sdk` >= 3.1.15).
|
|
458
|
+
*
|
|
459
|
+
* Fix crítico (2026-07-22, incidente pdv-agiliza): `buildNode` já força
|
|
460
|
+
* `NEXT_PUBLIC_NEETRU_ENV` via spawn-env (neutraliza `.env.local` vencendo
|
|
461
|
+
* `.env.production`), então esta checagem deveria SEMPRE bater pra quem
|
|
462
|
+
* passa por `neetru build`. Ela existe como rede de segurança pra quando o
|
|
463
|
+
* build não passou pelo caminho oficial (ex: script customizado que chama
|
|
464
|
+
* `next build` direto, contornando o CLI) — nesse caso é a ÚNICA defesa
|
|
465
|
+
* que ainda pega o bug antes do tarball ser publicado, em vez de só
|
|
466
|
+
* aparecer meses depois como "o botão de login não faz nada".
|
|
467
|
+
*
|
|
468
|
+
* Manifesto ausente (produto ainda não adotou `withNeetruBuildGuard`) →
|
|
469
|
+
* warning, não bloqueia (rollout gradual — não quebra produtos existentes
|
|
470
|
+
* que ainda não atualizaram o `next.config.mjs`). Manifesto presente e
|
|
471
|
+
* divergente → aborta o build (`safeExit(1)`), nunca empacota um tarball
|
|
472
|
+
* silenciosamente quebrado.
|
|
473
|
+
*/
|
|
474
|
+
async function validateBuildEnvManifest(cwd, targetEnv) {
|
|
475
|
+
const manifestPath = path.join(cwd, '.next', 'neetru-build-manifest.json');
|
|
476
|
+
if (!fileExists(manifestPath)) {
|
|
477
|
+
log.warn('Guard de build não encontrado (.next/neetru-build-manifest.json). ' +
|
|
478
|
+
'O produto não envolve next.config.mjs com withNeetruBuildGuard (@neetru/sdk >= 3.1.15) — ' +
|
|
479
|
+
`não foi possível confirmar que o bundle compilado reflete NEXT_PUBLIC_NEETRU_ENV=${targetEnv}. ` +
|
|
480
|
+
'Recomendado: export default withNeetruBuildGuard({ ...nextConfig }) no next.config.mjs.');
|
|
481
|
+
return;
|
|
482
|
+
}
|
|
483
|
+
let manifest;
|
|
484
|
+
try {
|
|
485
|
+
manifest = JSON.parse(await fsp.readFile(manifestPath, 'utf8'));
|
|
486
|
+
}
|
|
487
|
+
catch {
|
|
488
|
+
log.warn('Guard de build ilegível (.next/neetru-build-manifest.json) — pulando validação.');
|
|
489
|
+
return;
|
|
490
|
+
}
|
|
491
|
+
if (manifest.builtEnv !== targetEnv) {
|
|
492
|
+
log.error(`BUILD ABORTADO: o bundle compilado tem NEXT_PUBLIC_NEETRU_ENV="${manifest.builtEnv}" ` +
|
|
493
|
+
`mas o build era pra targetEnv="${targetEnv}". Isso indica .env.local (ou outro arquivo) ` +
|
|
494
|
+
'vencendo a precedência de env do Next.js (incidente 2026-07-22, pdv-agiliza — o SDK ativa ' +
|
|
495
|
+
'MockAuth quando env=dev, e o login real para de funcionar em produção). ' +
|
|
496
|
+
'O `neetru build` já força NEXT_PUBLIC_NEETRU_ENV via spawn-env — se você está vendo este ' +
|
|
497
|
+
'erro mesmo assim, o next.config.mjs pode estar sobrescrevendo a variável manualmente, ou ' +
|
|
498
|
+
'o build não passou pelo `neetru build` (ex: script customizado contornando o CLI).');
|
|
499
|
+
throw new BuildEnvGuardAbort('NEXT_PUBLIC_NEETRU_ENV divergente do targetEnv');
|
|
500
|
+
}
|
|
501
|
+
log.dim(` guard: NEXT_PUBLIC_NEETRU_ENV confirmado = ${manifest.builtEnv}`);
|
|
502
|
+
}
|
|
430
503
|
async function buildDocker(cwd, slug, version, outputDir, noCache) {
|
|
431
504
|
const image = `neetru/${slug}:${version}`;
|
|
432
505
|
const buildArgs = ['build', '-t', image];
|
|
@@ -465,7 +538,7 @@ async function buildPhp(cwd) {
|
|
|
465
538
|
}
|
|
466
539
|
return { entrypoint: 'index.php' };
|
|
467
540
|
}
|
|
468
|
-
async function buildStatic(cwd, noInstall = false) {
|
|
541
|
+
async function buildStatic(cwd, noInstall = false, targetEnv = 'prod') {
|
|
469
542
|
const pkgPath = path.join(cwd, 'package.json');
|
|
470
543
|
if (fileExists(pkgPath)) {
|
|
471
544
|
try {
|
|
@@ -479,8 +552,14 @@ async function buildStatic(cwd, noInstall = false) {
|
|
|
479
552
|
log.info('npm install (não destructivo)…');
|
|
480
553
|
await runCmd('npm', ['install', '--no-save', '--no-audit', '--no-fund'], cwd);
|
|
481
554
|
}
|
|
555
|
+
// Fix (2026-07-22, achado da revisão adversarial): `--stack static`
|
|
556
|
+
// também roda `next build` (output:'export') pra produtos Next.js
|
|
557
|
+
// exportados estaticamente — mesmo risco de .env.local vencer
|
|
558
|
+
// .env.production do stack node, mas sem proteção nenhuma até aqui.
|
|
559
|
+
// Mesmo forçado via spawn-env que buildNode (ver ali pro porquê).
|
|
560
|
+
log.dim(` NEXT_PUBLIC_NEETRU_ENV forçado via spawn-env: ${targetEnv} (incidente pdv-agiliza 2026-07-22)`);
|
|
482
561
|
log.info('npm run build…');
|
|
483
|
-
await runCmd('npm', ['run', 'build'], cwd);
|
|
562
|
+
await runCmd('npm', ['run', 'build'], cwd, { NEXT_PUBLIC_NEETRU_ENV: targetEnv });
|
|
484
563
|
}
|
|
485
564
|
}
|
|
486
565
|
catch {
|
|
@@ -511,6 +590,27 @@ export async function runBuild(opts = {}) {
|
|
|
511
590
|
// 'nextjs' → 'node' (Next.js roda com `npm run build` + `next start`, igual ao
|
|
512
591
|
// pipeline node padrão. O stack 'docker' é pra quem tem Dockerfile explícito).
|
|
513
592
|
const stack = rawStack === 'nextjs' ? 'node' : rawStack;
|
|
593
|
+
// Fix crítico (2026-07-22, incidente pdv-agiliza): `neetru build` sempre
|
|
594
|
+
// serve pra gerar artefato de DEPLOY — nunca pra dev local (isso é `next
|
|
595
|
+
// dev`/`neetru dev up`) — então o default é sempre 'prod'. Ver BuildOptions.targetEnv.
|
|
596
|
+
//
|
|
597
|
+
// Fix (achado da revisão adversarial): `--target-env` aceitava qualquer
|
|
598
|
+
// string sem validar — um typo como "staging" ou o alias "production" (que
|
|
599
|
+
// `neetru env switch` já reconhece) passava direto pro spawn-env, e
|
|
600
|
+
// validateBuildEnvManifest comparava string-a-string o mesmo valor não
|
|
601
|
+
// normalizado contra si mesmo, "confirmando" um build nunca de fato
|
|
602
|
+
// validado contra o enum real. Reusa `normalizeTarget` (mesma função de
|
|
603
|
+
// `neetru env switch`) — normaliza `production` → `prod` e rejeita
|
|
604
|
+
// qualquer outro valor com erro claro em vez de seguir silenciosamente.
|
|
605
|
+
let targetEnv = 'prod';
|
|
606
|
+
if (opts.targetEnv) {
|
|
607
|
+
const normalized = normalizeTarget(opts.targetEnv);
|
|
608
|
+
if (!normalized) {
|
|
609
|
+
log.error(`--target-env "${opts.targetEnv}" inválido. Use: dev | workspace | prod.`);
|
|
610
|
+
safeExit(1);
|
|
611
|
+
}
|
|
612
|
+
targetEnv = normalized;
|
|
613
|
+
}
|
|
514
614
|
// bug_25ff8581: carrega vars de --env-file antes do build. As vars são injetadas
|
|
515
615
|
// via spawn-env apenas durante o build — não vão pro Core nem ao manifest.
|
|
516
616
|
let buildEnvVars;
|
|
@@ -532,8 +632,14 @@ export async function runBuild(opts = {}) {
|
|
|
532
632
|
try {
|
|
533
633
|
if (stack === 'node') {
|
|
534
634
|
// bug_25ff8581: passa extraEnv do --env-file para o buildNode.
|
|
535
|
-
|
|
635
|
+
// Incidente 2026-07-22: passa targetEnv — força NEXT_PUBLIC_NEETRU_ENV
|
|
636
|
+
// via spawn-env, neutralizando .env.local vencendo .env.production.
|
|
637
|
+
const r = await buildNode(cwd, !!opts.noCache, !!opts.noInstall, buildEnvVars, targetEnv);
|
|
536
638
|
entrypoint = r.entrypoint;
|
|
639
|
+
// Incidente 2026-07-22: confirma que o bundle compilado realmente
|
|
640
|
+
// refletiu o targetEnv (defesa contra scripts de build customizados
|
|
641
|
+
// que ignorem o spawn-env acima) ANTES de empacotar o tarball.
|
|
642
|
+
await validateBuildEnvManifest(cwd, targetEnv);
|
|
537
643
|
// Empacota o cwd inteiro excluindo dirs grandes.
|
|
538
644
|
await tarDirectory(cwd, tarballPath, [
|
|
539
645
|
'.git',
|
|
@@ -555,8 +661,11 @@ export async function runBuild(opts = {}) {
|
|
|
555
661
|
await tarDirectory(cwd, tarballPath, ['.git', '.neetru-build', 'node_modules', 'tmp', '*.log']);
|
|
556
662
|
}
|
|
557
663
|
else if (stack === 'static') {
|
|
558
|
-
|
|
664
|
+
// Incidente 2026-07-22: --stack static também roda `next build`
|
|
665
|
+
// (output:'export') pra produtos Next.js — mesma proteção do stack node.
|
|
666
|
+
const r = await buildStatic(cwd, !!opts.noInstall, targetEnv);
|
|
559
667
|
entrypoint = r.entrypoint;
|
|
668
|
+
await validateBuildEnvManifest(cwd, targetEnv);
|
|
560
669
|
await tarDirectory(r.root, tarballPath, ['.git', '.neetru-build']);
|
|
561
670
|
}
|
|
562
671
|
else {
|
|
@@ -566,8 +675,17 @@ export async function runBuild(opts = {}) {
|
|
|
566
675
|
unregisterSpinner(spinner);
|
|
567
676
|
}
|
|
568
677
|
catch (err) {
|
|
569
|
-
spinner.fail(`Falha no build: ${err.message}`);
|
|
570
678
|
unregisterSpinner(spinner);
|
|
679
|
+
// Fix (2026-07-22, achado da revisão adversarial do guard de env):
|
|
680
|
+
// validateBuildEnvManifest já logou a mensagem certa (BUILD ABORTADO —
|
|
681
|
+
// ver função) antes de lançar BuildEnvGuardAbort. Reprocessar como falha
|
|
682
|
+
// de build genérica aqui imprimia "Falha no build: <mensagem interna>"
|
|
683
|
+
// por cima da mensagem já clara, e chamar safeExit(1) de novo agendava
|
|
684
|
+
// um SEGUNDO exit — sai uma única vez, sem spinner.fail redundante.
|
|
685
|
+
if (err instanceof BuildEnvGuardAbort) {
|
|
686
|
+
safeExit(1);
|
|
687
|
+
}
|
|
688
|
+
spinner.fail(`Falha no build: ${err.message}`);
|
|
571
689
|
// bug_818cf6d (MEDIUM): safeExit em vez de process.exit pra evitar
|
|
572
690
|
// libuv assertion (Windows) — cleanup explícito antes do exit (NEVER returns).
|
|
573
691
|
safeExit(1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/db.d.ts
CHANGED
|
@@ -43,6 +43,13 @@ export interface DbApplyOptions {
|
|
|
43
43
|
yes?: boolean;
|
|
44
44
|
/** gestovendas #9: saída em JSON para integração CI/automação. */
|
|
45
45
|
json?: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* bug_pdv_rehearse_2026-07-27: pula `rehearseInContainer` (Postgres/MySQL
|
|
48
|
+
* efêmero via Docker). Contrato de `rehearse.ts` — DEVE ser logado aqui
|
|
49
|
+
* (não silencioso). NÃO substitui o ensaio: a DDL não-testada ainda roda
|
|
50
|
+
* contra a VM real via Core/agente, só que sem a rede de segurança local.
|
|
51
|
+
*/
|
|
52
|
+
skipRehearse?: boolean;
|
|
46
53
|
}
|
|
47
54
|
export declare function runDbApply(opts?: DbApplyOptions): Promise<void>;
|
|
48
55
|
export interface DbMigrationsListOptions {
|
package/dist/commands/db.js
CHANGED
|
@@ -828,6 +828,20 @@ export async function runDbApply(opts = {}) {
|
|
|
828
828
|
classify: 'Classificando migração…',
|
|
829
829
|
push: 'Enviando ao Core…',
|
|
830
830
|
};
|
|
831
|
+
// bug_pdv_rehearse_2026-07-27: override explícito NÃO pode ser silencioso
|
|
832
|
+
// (contrato de `RehearseOptions.skipRehearse` em rehearse.ts) — loga ANTES
|
|
833
|
+
// de montar as deps, em todo modo de saída (texto e --json).
|
|
834
|
+
if (opts.skipRehearse) {
|
|
835
|
+
const msg = 'AVISO: --skip-rehearse ativo — o ensaio local (Postgres/MySQL efêmero) ' +
|
|
836
|
+
'foi pulado. A DDL NÃO foi validada localmente; o Core/agente ainda vai ' +
|
|
837
|
+
'rodá-la contra a VM real.';
|
|
838
|
+
if (opts.json) {
|
|
839
|
+
process.stderr.write(JSON.stringify({ warning: msg }) + '\n');
|
|
840
|
+
}
|
|
841
|
+
else {
|
|
842
|
+
log.warn(msg);
|
|
843
|
+
}
|
|
844
|
+
}
|
|
831
845
|
let spinner = opts.json ? null : ora({ text: 'Iniciando pipeline…', color: 'blue' }).start();
|
|
832
846
|
let result;
|
|
833
847
|
try {
|
|
@@ -843,7 +857,7 @@ export async function runDbApply(opts = {}) {
|
|
|
843
857
|
},
|
|
844
858
|
}
|
|
845
859
|
: {}),
|
|
846
|
-
}, rehearseEngine);
|
|
860
|
+
}, rehearseEngine, !!opts.skipRehearse);
|
|
847
861
|
// BL-5 fix: passa `dbId` resolvido para o pipeline.
|
|
848
862
|
result = await runApplyPipeline({
|
|
849
863
|
schemaPath: schemaAbs,
|