@neetru/cli 2.26.5 → 2.27.0
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 +37 -0
- package/dist/commands/db.d.ts +31 -0
- package/dist/commands/db.js +296 -1
- package/dist/commands/db.js.map +1 -1
- package/dist/index.js +31 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/db-pipeline/build-deps.js +167 -1
- package/dist/lib/db-pipeline/build-deps.js.map +1 -1
- package/dist/lib/db-pipeline/index.d.ts +3 -2
- package/dist/lib/db-pipeline/index.js +1 -1
- package/dist/lib/db-pipeline/index.js.map +1 -1
- package/dist/lib/db-pipeline/pipeline.d.ts +34 -1
- package/dist/lib/db-pipeline/pipeline.js +55 -0
- package/dist/lib/db-pipeline/pipeline.js.map +1 -1
- package/dist/lib/db-pipeline/rehearse.js +12 -1
- package/dist/lib/db-pipeline/rehearse.js.map +1 -1
- package/dist/lib/db-pipeline/types.d.ts +20 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-deps.js","sourceRoot":"","sources":["../../../src/lib/db-pipeline/build-deps.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"build-deps.js","sourceRoot":"","sources":["../../../src/lib/db-pipeline/build-deps.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,9 +18,10 @@
|
|
|
18
18
|
* - `PipelineError` / `isPipelineError` — o erro tipado do pipeline.
|
|
19
19
|
* - os tipos do contrato.
|
|
20
20
|
*/
|
|
21
|
-
export { runApplyPipeline } from './pipeline.js';
|
|
21
|
+
export { runApplyPipeline, runExecSqlPipeline } from './pipeline.js';
|
|
22
22
|
export { buildPipelineDeps } from './build-deps.js';
|
|
23
23
|
export { PipelineError, isPipelineError } from './errors.js';
|
|
24
24
|
export { buildRehearseInContainer, buildDockerExecFn, RehearseDockerUnavailableError, isRehearseDockerUnavailableError, } from './rehearse.js';
|
|
25
|
-
export type {
|
|
25
|
+
export type { ExecSqlDeps } from './pipeline.js';
|
|
26
|
+
export type { PipelinePhase, MigrationSeverity, ApplyEnv, ClassificationResult, RehearsalResult, ApplyArtifact, PushResult, PipelineDeps, PipelineInput, ExecSqlInput, PipelineResult, } from './types.js';
|
|
26
27
|
export type { DockerExecFn, DockerExecResult, RehearseOptions } from './rehearse.js';
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
* - `PipelineError` / `isPipelineError` — o erro tipado do pipeline.
|
|
19
19
|
* - os tipos do contrato.
|
|
20
20
|
*/
|
|
21
|
-
export { runApplyPipeline } from './pipeline.js';
|
|
21
|
+
export { runApplyPipeline, runExecSqlPipeline } from './pipeline.js';
|
|
22
22
|
export { buildPipelineDeps } from './build-deps.js';
|
|
23
23
|
export { PipelineError, isPipelineError } from './errors.js';
|
|
24
24
|
export { buildRehearseInContainer, buildDockerExecFn, RehearseDockerUnavailableError, isRehearseDockerUnavailableError, } from './rehearse.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/db-pipeline/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/db-pipeline/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EACL,wBAAwB,EACxB,iBAAiB,EACjB,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,eAAe,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PipelineDeps, PipelineInput, PipelineResult } from './types.js';
|
|
1
|
+
import type { ClassificationResult, ExecSqlInput, PipelineDeps, PipelineInput, PipelineResult } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Roda o pipeline `neetru db apply` (fases 1-5), emitindo `onPhase` antes de
|
|
4
4
|
* cada fase.
|
|
@@ -11,3 +11,36 @@ import type { PipelineDeps, PipelineInput, PipelineResult } from './types.js';
|
|
|
11
11
|
* qualquer outro erro das deps (ex.: `generateSql` falhar) sem engolir.
|
|
12
12
|
*/
|
|
13
13
|
export declare function runApplyPipeline(input: PipelineInput, deps: PipelineDeps): Promise<PipelineResult>;
|
|
14
|
+
/**
|
|
15
|
+
* Roda o pipeline de `neetru db exec-sql` — as MESMAS 3 fases finais de
|
|
16
|
+
* segurança do `db apply` (rehearse → classify → push), pulando fingerprint/
|
|
17
|
+
* generate porque não há `schema.ts` envolvido: o `.sql` já vem pronto do
|
|
18
|
+
* operador. Reusa exatamente o mesmo `PipelineDeps` (`rehearseInContainer`,
|
|
19
|
+
* `classify`, `pushToCore`) — o Core recebe e audita esse artefato do MESMO
|
|
20
|
+
* jeito que uma migração normal, incluindo o gate de MFA se o statement for
|
|
21
|
+
* classificado como destrutivo.
|
|
22
|
+
*
|
|
23
|
+
* Fail-closed: `sql` vazio é erro do operador (não um "sem mudanças" — não
|
|
24
|
+
* existe schema pra não ter mudado), rehearse falhando PARA o pipeline (não
|
|
25
|
+
* empurra pro Core), igual `runApplyPipeline`.
|
|
26
|
+
*/
|
|
27
|
+
export interface ExecSqlDeps extends Pick<PipelineDeps, 'rehearseInContainer' | 'classify' | 'pushToCore' | 'onPhase'> {
|
|
28
|
+
/**
|
|
29
|
+
* BUG FIX (achado por Codex review adversarial, bug_pdv_ownership_drift_
|
|
30
|
+
* 2026-07-28): a confirmação interativa do `exec-sql` rodava ANTES do
|
|
31
|
+
* pipeline — o operador confirmava "sim, rodar" às cegas, sem saber se o
|
|
32
|
+
* SQL ia classificar como aditivo ou destrutivo (só descobria DEPOIS do
|
|
33
|
+
* push). Não era bypass de segurança (destrutiva ainda pausa pro MFA
|
|
34
|
+
* confirm real), mas é uma ordem ruim: o `y/n` deveria vir DEPOIS de saber
|
|
35
|
+
* a severidade, não antes.
|
|
36
|
+
*
|
|
37
|
+
* `confirmBeforePush`, se fornecido, roda DEPOIS de rehearse+classify e
|
|
38
|
+
* ANTES de push — recebe a classificação real pra decidir. Retornar
|
|
39
|
+
* `false` cancela sem chamar `pushToCore` (`status: 'cancelled'`).
|
|
40
|
+
*/
|
|
41
|
+
confirmBeforePush?: (ctx: {
|
|
42
|
+
sql: string;
|
|
43
|
+
classification: ClassificationResult;
|
|
44
|
+
}) => Promise<boolean>;
|
|
45
|
+
}
|
|
46
|
+
export declare function runExecSqlPipeline(input: ExecSqlInput, deps: ExecSqlDeps): Promise<PipelineResult>;
|
|
@@ -116,4 +116,59 @@ export async function runApplyPipeline(input, deps) {
|
|
|
116
116
|
fingerprint,
|
|
117
117
|
};
|
|
118
118
|
}
|
|
119
|
+
export async function runExecSqlPipeline(input, deps) {
|
|
120
|
+
const { sql, env, dbId } = input;
|
|
121
|
+
if (typeof sql !== 'string' || sql.trim().length === 0) {
|
|
122
|
+
throw new PipelineError('generate', 'SQL vazio — nada para executar.');
|
|
123
|
+
}
|
|
124
|
+
// Fingerprint do texto SQL em si (não há schema.ts pra fazer fingerprint) —
|
|
125
|
+
// mesma função de hash, só que aplicada ao SQL literal, pra manter o
|
|
126
|
+
// registro de auditoria do Core consistente com o de `db apply`.
|
|
127
|
+
const fingerprint = schemaFingerprint(sql);
|
|
128
|
+
emitPhase(deps, 'rehearse');
|
|
129
|
+
let rehearsal;
|
|
130
|
+
try {
|
|
131
|
+
rehearsal = await deps.rehearseInContainer(sql);
|
|
132
|
+
}
|
|
133
|
+
catch (err) {
|
|
134
|
+
throw new PipelineError('rehearse', `A ensaiada do SQL num Postgres efêmero não pôde rodar: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
135
|
+
}
|
|
136
|
+
if (!rehearsal || rehearsal.ok !== true) {
|
|
137
|
+
throw new PipelineError('rehearse', `O SQL falhou na ensaiada (Postgres efêmero) e NÃO será enviado` +
|
|
138
|
+
`${rehearsal?.error ? `: ${rehearsal.error}` : '.'}`);
|
|
139
|
+
}
|
|
140
|
+
emitPhase(deps, 'classify');
|
|
141
|
+
let classification;
|
|
142
|
+
try {
|
|
143
|
+
classification = deps.classify(sql);
|
|
144
|
+
}
|
|
145
|
+
catch (err) {
|
|
146
|
+
throw new PipelineError('classify', `Falha ao classificar o SQL (aditiva/destrutiva): ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
147
|
+
}
|
|
148
|
+
if (deps.confirmBeforePush) {
|
|
149
|
+
const confirmed = await deps.confirmBeforePush({ sql, classification });
|
|
150
|
+
if (!confirmed) {
|
|
151
|
+
return {
|
|
152
|
+
migrationId: '(cancelado)',
|
|
153
|
+
status: 'cancelled',
|
|
154
|
+
severity: classification.overallSeverity,
|
|
155
|
+
fingerprint,
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
emitPhase(deps, 'push');
|
|
160
|
+
let pushed;
|
|
161
|
+
try {
|
|
162
|
+
pushed = await deps.pushToCore({ dbId, sql, fingerprint, classification, env });
|
|
163
|
+
}
|
|
164
|
+
catch (err) {
|
|
165
|
+
throw new PipelineError('push', `Falha ao adquirir o lock / enviar o SQL pro Core: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
166
|
+
}
|
|
167
|
+
return {
|
|
168
|
+
migrationId: pushed.migrationId,
|
|
169
|
+
status: pushed.status,
|
|
170
|
+
severity: classification.overallSeverity,
|
|
171
|
+
fingerprint,
|
|
172
|
+
};
|
|
173
|
+
}
|
|
119
174
|
//# sourceMappingURL=pipeline.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/lib/db-pipeline/pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/lib/db-pipeline/pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,10 +86,21 @@ const ENGINE_SPECS = {
|
|
|
86
86
|
'exec', c, 'pg_isready', '--username', PG_ENV.user, '--dbname', PG_ENV.db, '--quiet',
|
|
87
87
|
],
|
|
88
88
|
// psql --single-transaction: rollback total em erro parcial (container limpo).
|
|
89
|
+
//
|
|
90
|
+
// BUG FIX (achado por Codex review adversarial, bug_pdv_createtype_guard_
|
|
91
|
+
// 2026-07-28): SEM `-v ON_ERROR_STOP=1`, o psql continua lendo o script
|
|
92
|
+
// após um statement falhar e sai com exit code 0 mesmo que TUDO tenha
|
|
93
|
+
// sido revertido (confirmado ao vivo: script com um statement inválido
|
|
94
|
+
// no meio → psql roda até o fim, imprime os erros no stderr, exit 0,
|
|
95
|
+
// `\dt` depois confirma zero tabelas criadas — o --single-transaction já
|
|
96
|
+
// reverteu tudo). Sem ON_ERROR_STOP, `rehearseInContainer` podia devolver
|
|
97
|
+
// `{ ok: true }` pra SQL que na real falhou 100% — quebrando a garantia
|
|
98
|
+
// de "rehearse pega SQL quebrado antes do push pro Core". Com
|
|
99
|
+
// ON_ERROR_STOP=1 confirmado: mesmo script → exit code 3 (falha real).
|
|
89
100
|
applyCmd: (c) => [
|
|
90
101
|
'exec', '--interactive', c, 'psql',
|
|
91
102
|
'--username', PG_ENV.user, '--dbname', PG_ENV.db,
|
|
92
|
-
'--no-psqlrc', '--single-transaction', '--file', '-',
|
|
103
|
+
'--no-psqlrc', '--single-transaction', '-v', 'ON_ERROR_STOP=1', '--file', '-',
|
|
93
104
|
],
|
|
94
105
|
},
|
|
95
106
|
mysql: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rehearse.js","sourceRoot":"","sources":["../../../src/lib/db-pipeline/rehearse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AA2D3C,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IAC9C,gCAAgC,GAAG,IAAa,CAAC;IAE1D,YAAY,OAAe,EAAE,OAA6B;QACxD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;QAC7C,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAClD,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;CACF;AAED,6EAA6E;AAC7E,MAAM,UAAU,gCAAgC,CAC9C,KAAc;IAEd,OAAO,CACL,KAAK,YAAY,8BAA8B;QAC/C,CAAC,OAAO,KAAK,KAAK,QAAQ;YACxB,KAAK,KAAK,IAAI;YACb,KAAwD;iBACtD,gCAAgC,KAAK,IAAI,CAAC,CAChD,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,uEAAuE;AACvE,MAAM,aAAa,GAAG,oBAAoB,CAAC;AAC3C,+DAA+D;AAC/D,MAAM,wBAAwB,GAAG,MAAM,CAAC;AACxC,6CAA6C;AAC7C,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAEnC;;;GAGG;AACH,MAAM,MAAM,GAAG;IACb,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,qBAAqB;IAC/B,EAAE,EAAE,iBAAiB;CACb,CAAC;AAEX,yEAAyE;AACzE,MAAM,SAAS,GAAG;IAChB,QAAQ,EAAE,qBAAqB;IAC/B,EAAE,EAAE,iBAAiB;CACb,CAAC;AAgBX,MAAM,YAAY,GAAuC;IACvD,QAAQ,EAAE;QACR,YAAY,EAAE,aAAa;QAC3B,cAAc,EAAE,wBAAwB;QACxC,UAAU,EAAE;YACV,IAAI,EAAE,iBAAiB,MAAM,CAAC,IAAI,EAAE;YACpC,IAAI,EAAE,qBAAqB,MAAM,CAAC,QAAQ,EAAE;YAC5C,IAAI,EAAE,eAAe,MAAM,CAAC,EAAE,EAAE;SACjC;QACD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS;SACrF;QACD,+EAA+E;QAC/E,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM;YAClC,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE;YAChD,aAAa,EAAE,sBAAsB,EAAE,QAAQ,EAAE,GAAG;
|
|
1
|
+
{"version":3,"file":"rehearse.js","sourceRoot":"","sources":["../../../src/lib/db-pipeline/rehearse.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,6 +81,26 @@ export interface PipelineDeps {
|
|
|
81
81
|
/** Callback de progresso — chamado ANTES de cada fase começar. */
|
|
82
82
|
onPhase?: (phase: PipelinePhase) => void;
|
|
83
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* Entrada do `runExecSqlPipeline` (`neetru db exec-sql`) — mesmo pipeline de
|
|
86
|
+
* segurança do `db apply` (rehearse → classify → push, com o MESMO gate de
|
|
87
|
+
* MFA pra migração destrutiva), só que o `.sql` vem DIRETO do operador em vez
|
|
88
|
+
* de ser gerado via `drizzle-kit generate` a partir de `schema.ts`.
|
|
89
|
+
*
|
|
90
|
+
* bug_pdv_ownership_drift_2026-07-28: existia pra rodar fix administrativo
|
|
91
|
+
* pontual (ex.: `ALTER TABLE x OWNER TO y`) que não é parte do schema
|
|
92
|
+
* declarativo do produto — sem isto, o único jeito de rodar SQL avulso
|
|
93
|
+
* contra produção seria chamar `/api/cli/v1/db/apply` manualmente por fora
|
|
94
|
+
* do CLI (o endpoint já aceita `sql` livre — `db exec-sql` só expõe isso).
|
|
95
|
+
*/
|
|
96
|
+
export interface ExecSqlInput {
|
|
97
|
+
/** O SQL a executar — texto livre, não precisa vir de um schema.ts. */
|
|
98
|
+
sql: string;
|
|
99
|
+
/** Ambiente alvo da migração. */
|
|
100
|
+
env: ApplyEnv;
|
|
101
|
+
/** ID do banco no Core — mesma resolução de `.neetru/db.json` que `db apply`. */
|
|
102
|
+
dbId: string;
|
|
103
|
+
}
|
|
84
104
|
/** Entrada do `runApplyPipeline`. */
|
|
85
105
|
export interface PipelineInput {
|
|
86
106
|
/** Caminho do arquivo de schema do produto. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neetru/cli",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.27.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Neetru Developer Kit — scaffold, AI assistant, publish, build e deploy de produtos SaaS Neetru via Core (VM-based agents)",
|
|
6
6
|
"keywords": [
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@anthropic-ai/sdk": "^0.96.0",
|
|
44
|
-
"@neetru/db-classifier": "^0.1.
|
|
44
|
+
"@neetru/db-classifier": "^0.1.5",
|
|
45
45
|
"chalk": "^5.4.1",
|
|
46
46
|
"commander": "^12.1.0",
|
|
47
47
|
"conf": "^13.0.1",
|