refacil-sdd-ai 2.1.3 → 2.1.5
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/bin/cli.js +21 -5
- package/package.json +1 -1
- package/skills/up-code/SKILL.md +21 -6
package/bin/cli.js
CHANGED
|
@@ -210,12 +210,28 @@ function checkUpdate() {
|
|
|
210
210
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
211
211
|
}).trim();
|
|
212
212
|
|
|
213
|
-
if (latest
|
|
213
|
+
if (!latest || latest === localVersion) return;
|
|
214
|
+
|
|
215
|
+
// Auto-upgrade: the hook does it itself, LLM only sees the result
|
|
216
|
+
try {
|
|
217
|
+
execSync('npm update -g refacil-sdd-ai', {
|
|
218
|
+
encoding: 'utf8',
|
|
219
|
+
timeout: 60000,
|
|
220
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
221
|
+
});
|
|
222
|
+
execSync('refacil-sdd-ai update', {
|
|
223
|
+
encoding: 'utf8',
|
|
224
|
+
timeout: 30000,
|
|
225
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
226
|
+
});
|
|
214
227
|
console.log(
|
|
215
|
-
`
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
228
|
+
`[refacil-sdd-ai] La metodologia SDD-AI se actualizo automaticamente de v${localVersion} a v${latest}. Skills y hooks sincronizados.`,
|
|
229
|
+
);
|
|
230
|
+
} catch (_) {
|
|
231
|
+
// Upgrade failed — inform so the user can do it manually
|
|
232
|
+
console.log(
|
|
233
|
+
`[refacil-sdd-ai] Hay una nueva version disponible (v${localVersion} -> v${latest}) pero la actualizacion automatica fallo. ` +
|
|
234
|
+
`Informa al usuario que ejecute manualmente: npm update -g refacil-sdd-ai && refacil-sdd-ai update`,
|
|
219
235
|
);
|
|
220
236
|
}
|
|
221
237
|
} catch (_) {
|
package/package.json
CHANGED
package/skills/up-code/SKILL.md
CHANGED
|
@@ -27,15 +27,30 @@ Aplica la **Politica de ramas protegidas y creacion de rama** definida en `refac
|
|
|
27
27
|
- Para `refacil:up-code`, el prefijo sugerido de rama es `feature/` (o `fix/` si el cambio es bugfix).
|
|
28
28
|
- Si el usuario no aprueba la creacion/cambio de rama, detener. No continuar con commit/push.
|
|
29
29
|
|
|
30
|
-
### Paso 3: Verificar
|
|
30
|
+
### Paso 3: Verificar review (obligatorio)
|
|
31
|
+
|
|
32
|
+
Antes de continuar, verifica si hay cambios activos en `openspec/changes/` (excluir carpeta `archive/`).
|
|
33
|
+
|
|
34
|
+
Si hay cambios activos:
|
|
35
|
+
1. Para cada carpeta activa, verifica si existe el archivo `.review-passed`
|
|
36
|
+
2. Si **todas** tienen `.review-passed` → continua al paso 4
|
|
37
|
+
3. Si **alguna** no tiene `.review-passed`:
|
|
38
|
+
- Informa al usuario: "Se detectaron cambios sin review aprobado: [nombres de carpetas sin review]"
|
|
39
|
+
- Ejecuta `/refacil:review` automaticamente sobre los cambios pendientes
|
|
40
|
+
- Si el review aprueba (crea `.review-passed`) → continua al paso 4
|
|
41
|
+
- Si el review requiere correcciones → detente e informa los hallazgos al usuario
|
|
42
|
+
|
|
43
|
+
Si no hay carpeta `openspec/changes/` o no hay cambios activos → continua al paso 4 (no hay nada que revisar).
|
|
44
|
+
|
|
45
|
+
### Paso 4: Verificar cambios pendientes
|
|
31
46
|
|
|
32
47
|
Ejecuta `git status` para verificar si hay cambios para subir.
|
|
33
48
|
|
|
34
49
|
- Si no hay cambios pendientes ni commits sin push, informa al usuario y detente.
|
|
35
|
-
- Si hay cambios sin commitear, continua al paso
|
|
36
|
-
- Si solo hay commits sin push (nada que commitear), salta directo al paso
|
|
50
|
+
- Si hay cambios sin commitear, continua al paso 5.
|
|
51
|
+
- Si solo hay commits sin push (nada que commitear), salta directo al paso 6.
|
|
37
52
|
|
|
38
|
-
### Paso
|
|
53
|
+
### Paso 5: Commit de cambios
|
|
39
54
|
|
|
40
55
|
1. Ejecuta `git status --short` y muestra al usuario la lista de archivos detectados.
|
|
41
56
|
2. Pide confirmacion explicita antes de stagear todo.
|
|
@@ -45,11 +60,11 @@ Ejecuta `git status` para verificar si hay cambios para subir.
|
|
|
45
60
|
6. Si no se proporciono mensaje, genera uno descriptivo basado en los cambios detectados con `git diff --staged --stat`.
|
|
46
61
|
7. Ejecuta `git commit -m "[mensaje]"`.
|
|
47
62
|
|
|
48
|
-
### Paso
|
|
63
|
+
### Paso 6: Push a remoto
|
|
49
64
|
|
|
50
65
|
Ejecuta `git push -u origin [rama-actual]` para subir los cambios.
|
|
51
66
|
|
|
52
|
-
### Paso
|
|
67
|
+
### Paso 7: Confirmar y crear PR
|
|
53
68
|
|
|
54
69
|
1. Muestra el resumen del push:
|
|
55
70
|
```
|