@ingeniomaps/cauce 0.8.2 → 0.9.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 +11 -0
- package/engine/cli/ops.js +33 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,17 @@ esa operación sea confiable en vez de sólo cómoda: acá se lee qué cambió a
|
|
|
8
8
|
un cambio en el protocolo, en las reglas del sistema o en un guard es visible para el usuario y sube
|
|
9
9
|
minor aunque no toque una sola línea de código.
|
|
10
10
|
|
|
11
|
+
## [0.9.0] - 2026-08-15
|
|
12
|
+
|
|
13
|
+
### Añadido
|
|
14
|
+
|
|
15
|
+
- `ops integration disable <raíz> <proveedor>`: el par que faltaba. Apagar **no desinstala** —
|
|
16
|
+
`integrations/<proveedor>/` puede tener snapshots y borradores de la empresa, y borrarlos para
|
|
17
|
+
desconectar una integración sería perder trabajo suyo. El andamiaje queda y volver a encender no
|
|
18
|
+
pierde nada.
|
|
19
|
+
- `integration enable` sólo pide lo que falta: reencender un proveedor ya configurado no manda a
|
|
20
|
+
completar un archivo que la empresa terminó hace meses.
|
|
21
|
+
|
|
11
22
|
## [0.8.2] - 2026-08-15
|
|
12
23
|
|
|
13
24
|
### Corregido
|
package/engine/cli/ops.js
CHANGED
|
@@ -34,6 +34,7 @@ function usage() {
|
|
|
34
34
|
ops archive <planning-dir> <NNN>
|
|
35
35
|
ops integration list <ops-root>
|
|
36
36
|
ops integration enable <ops-root> <provider>
|
|
37
|
+
ops integration disable <ops-root> <provider>
|
|
37
38
|
ops integration check <ops-root> [provider]
|
|
38
39
|
ops integration sync <ops-root> <provider> [--fixture <json>]
|
|
39
40
|
ops integration promote <ops-root> <provider> <remote-key>
|
|
@@ -709,8 +710,38 @@ async function integration(action, rootArg, provider, key) {
|
|
|
709
710
|
config.providers[provider].enabled = true
|
|
710
711
|
F.atomicWriteJson(registry, config)
|
|
711
712
|
console.log(`✓ ${provider}: conectado al proyecto y andamiaje en integrations/${provider}/.`)
|
|
712
|
-
|
|
713
|
-
|
|
713
|
+
// Sólo se pide lo que falta: reencender un proveedor ya configurado no debería mandar a
|
|
714
|
+
// completar un archivo que la empresa terminó hace meses.
|
|
715
|
+
let listo = false
|
|
716
|
+
try {
|
|
717
|
+
const suyo = path.join(root, 'integrations', provider, 'config.json')
|
|
718
|
+
listo = JSON.parse(fs.readFileSync(suyo, 'utf8')).enabled === true
|
|
719
|
+
} catch { /* sin configurar */ }
|
|
720
|
+
if (listo) console.log(` Su configuración ya estaba completa: "integration sync" puede correr.`)
|
|
721
|
+
else {
|
|
722
|
+
console.log(` Falta lo tuyo: completá integrations/${provider}/config.json y poné enabled: true ahí.`)
|
|
723
|
+
console.log(` Hasta entonces "integration sync" se niega, que es lo correcto: no hay a dónde apuntar.`)
|
|
724
|
+
}
|
|
725
|
+
return
|
|
726
|
+
}
|
|
727
|
+
// Apagar no desinstala: `integrations/<proveedor>/` puede tener snapshots y borradores de la
|
|
728
|
+
// empresa, y borrarlos para desconectar una integración sería perder trabajo suyo. El andamiaje
|
|
729
|
+
// queda, callado, y volver a encenderlo no pierde nada.
|
|
730
|
+
if (action === 'disable') {
|
|
731
|
+
if (!provider) fail('Falta <provider>.', 2)
|
|
732
|
+
const registry = path.join(root, 'integrations', 'config.json')
|
|
733
|
+
let config
|
|
734
|
+
try { config = JSON.parse(fs.readFileSync(registry, 'utf8')) } catch (error) {
|
|
735
|
+
fail(`integrations/config.json ilegible: ${error.message}`)
|
|
736
|
+
}
|
|
737
|
+
if (!config.providers || !config.providers[provider]) fail(`${provider} no está en integrations/config.json.`)
|
|
738
|
+
config.providers[provider].enabled = false
|
|
739
|
+
F.atomicWriteJson(registry, config)
|
|
740
|
+
console.log(`✓ ${provider}: desconectado del proyecto. "integration sync" deja de correrlo.`)
|
|
741
|
+
const dir = path.join(root, 'integrations', provider)
|
|
742
|
+
if (fs.existsSync(dir)) {
|
|
743
|
+
console.log(` integrations/${provider}/ queda como está: ahí pueden vivir snapshots y borradores tuyos.`)
|
|
744
|
+
}
|
|
714
745
|
return
|
|
715
746
|
}
|
|
716
747
|
if (action === 'check') {
|