@ingeniomaps/cauce 0.8.1 → 0.8.2

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 CHANGED
@@ -8,10 +8,15 @@ 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.8.1] - 2026-08-15
11
+ ## [0.8.2] - 2026-08-15
12
12
 
13
13
  ### Corregido
14
14
 
15
+ - **`integration list` mostraba encendido un proveedor que se habría negado a sincronizar.** Hay dos
16
+ interruptores y `sync` exige los dos: el del registro dice que el proveedor está conectado al
17
+ proyecto, el suyo propio que su configuración está terminada. La lista leía sólo el primero, así
18
+ que después de `enable` decía `● jira` y `sync` contestaba `jira está deshabilitado`. Ahora
19
+ distingue los tres estados y `enable` no promete más de lo que hizo.
15
20
  - `integration enable` no falla si el andamiaje ya está. Habilitar no es inicializar: una instancia
16
21
  que lo arrastra de una versión anterior —o que ya tiene snapshots— sólo quiere el interruptor, y
17
22
  recibía un error pidiéndole un directorio vacío. Ahora repone lo que falte, conserva lo que haya y
package/engine/cli/ops.js CHANGED
@@ -679,8 +679,17 @@ async function integration(action, rootArg, provider, key) {
679
679
  const root = path.resolve(rootArg || '.')
680
680
  if (action === 'list') {
681
681
  const registry = JSON.parse(fs.readFileSync(path.join(root, 'integrations', 'config.json'), 'utf8'))
682
+ // Hay dos interruptores y `sync` exige los dos: el del registro dice que el proveedor está
683
+ // conectado al proyecto, el suyo propio que su configuración está terminada. Mostrar sólo el
684
+ // primero daba encendido a un proveedor que se habría negado a sincronizar.
682
685
  for (const [name, entry] of Object.entries(registry.providers || {})) {
683
- console.log(`${entry.enabled ? '●' : '○'} ${name} [${entry.adapter}]`)
686
+ let listo = false
687
+ try {
688
+ listo = JSON.parse(fs.readFileSync(path.join(root, 'integrations', name, 'config.json'), 'utf8')).enabled === true
689
+ } catch { /* sin materializar */ }
690
+ const estado = !entry.enabled ? '○' : (listo ? '●' : '◐')
691
+ const nota = estado === '◐' ? ` — falta completar integrations/${name}/config.json y poner enabled: true` : ''
692
+ console.log(`${estado} ${name} [${entry.adapter}]${nota}`)
684
693
  }
685
694
  return
686
695
  }
@@ -699,7 +708,9 @@ async function integration(action, rootArg, provider, key) {
699
708
  copyTemplate(source, path.join(root, 'integrations', provider), {}, true)
700
709
  config.providers[provider].enabled = true
701
710
  F.atomicWriteJson(registry, config)
702
- console.log(`✓ ${provider}: habilitado. Completá integrations/${provider}/config.json antes de sincronizar.`)
711
+ console.log(`✓ ${provider}: conectado al proyecto y andamiaje en integrations/${provider}/.`)
712
+ console.log(` Falta lo tuyo: completá integrations/${provider}/config.json y poné enabled: true ahí.`)
713
+ console.log(` Hasta entonces "integration sync" se niega, que es lo correcto: no hay a dónde apuntar.`)
703
714
  return
704
715
  }
705
716
  if (action === 'check') {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ingeniomaps/cauce",
3
- "version": "0.8.1",
3
+ "version": "0.8.2",
4
4
  "description": "Sistema portable de planificación y ejecución verificable para cualquier proyecto",
5
5
  "type": "commonjs",
6
6
  "bin": {