refacil-sdd-ai 3.0.1 → 3.0.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "refacil-sdd-ai",
3
- "version": "3.0.1",
3
+ "version": "3.0.2",
4
4
  "description": "SDD-AI: Specification-Driven Development with AI — metodologia de desarrollo con IA usando OpenSpec, Claude Code y Cursor",
5
5
  "bin": {
6
6
  "refacil-sdd-ai": "./bin/cli.js"
@@ -45,9 +45,20 @@ Segun el tipo, sigue el paso correspondiente:
45
45
 
46
46
  Los bug fixes solo contienen `summary.md` (y opcionalmente `.review-passed`), no tienen los artefactos completos que OpenSpec espera. Por eso se archivan **sin delegar a OpenSpec**.
47
47
 
48
- 1. **Mover a archive**: Mueve la carpeta completa del fix a `openspec/changes/archive/[fecha-ISO]-[nombre-fix]/`
48
+ 1. **Mover a archive (operacion de move, no copy)**: traslada la carpeta completa del fix desde `openspec/changes/[nombre-fix]/` a `openspec/changes/archive/[fecha-ISO]-[nombre-fix]/`. La carpeta de origen **debe quedar eliminada** al finalizar.
49
49
 
50
- 2. **Documentar en specs**: Lee el `summary.md` y el `.review-passed` del fix, y crea un spec individual para el bug en `openspec/specs/[nombre-descriptivo]/spec.md`.
50
+ Orden de ejecucion recomendado (determinista y cross-platform):
51
+ 1. Asegurar que existe el directorio `openspec/changes/archive/` (crearlo si no existe).
52
+ 2. Preferir un **move atomico** con `git mv "openspec/changes/[nombre-fix]" "openspec/changes/archive/[fecha-ISO]-[nombre-fix]"` cuando el fix ya esta bajo control de git (mueve y stagea de una).
53
+ 3. Si `git mv` no aplica (archivos no trackeados o error), usar en su lugar:
54
+ - Linux/macOS: `mv "openspec/changes/[nombre-fix]" "openspec/changes/archive/[fecha-ISO]-[nombre-fix]"`
55
+ - Windows (bash de Claude Code): el mismo `mv` funciona sobre rutas POSIX (`/c/Users/...`). **No usar `cp -r` sin el `rm -rf` posterior** — es la causa raiz tipica del bug en que la carpeta de origen sobrevive.
56
+ 4. **Verificacion obligatoria post-move**: ejecutar una listado/test de existencia para confirmar que:
57
+ - `openspec/changes/[nombre-fix]/` **ya NO existe**.
58
+ - `openspec/changes/archive/[fecha-ISO]-[nombre-fix]/` **SI existe** y contiene `summary.md` (+ `.review-passed` si lo habia).
59
+ 5. Si la verificacion falla (la carpeta de origen sobrevivio), eliminarla explicitamente con `rm -rf "openspec/changes/[nombre-fix]"` y re-verificar. No continuar al paso 2 hasta que el estado sea consistente.
60
+
61
+ 2. **Documentar en specs**: Lee el `summary.md` y el `.review-passed` del fix (desde la ruta **archivada** en `openspec/changes/archive/[fecha-ISO]-[nombre-fix]/`, ya no desde la ruta original), y crea un spec individual para el bug en `openspec/specs/[nombre-descriptivo]/spec.md`.
51
62
 
52
63
  **Nombre de la carpeta en specs**: Usa una descripcion corta y clara del bug en kebab-case (ej. `fix-session-timeout-redis`, `fix-null-pointer-payment-callback`). **NO uses IDs de tickets** (REF-123, JIRA-456, etc.) — el nombre debe ser descriptivo para que `/refacil:explore` pueda encontrar y entender el fix sin contexto externo.
53
64
 
@@ -119,11 +130,17 @@ El objetivo es que `openspec/specs/` documente como funciona el sistema HOY.
119
130
 
120
131
  ### Paso 3: Confirmar
121
132
 
133
+ Antes de mostrar el resumen, ejecutar una **verificacion final de limpieza** (aplica tanto a bug fixes como a cambios regulares):
134
+
135
+ - `openspec/changes/[nombre-original]/` **NO debe existir** (solo la version archivada debe sobrevivir en `openspec/changes/archive/...`).
136
+ - Si la carpeta de origen sobrevivio por cualquier razon (fallo del move, OpenSpec dejo residuos, copia en vez de mover), eliminarla explicitamente con `rm -rf "openspec/changes/[nombre-original]"` antes de confirmar al usuario.
137
+
122
138
  ```
123
139
  === Cambio archivado ===
124
140
  Cambio: [nombre]
125
141
  Tipo: [Bug fix | Cambio regular]
126
142
  Ubicacion: openspec/changes/archive/[fecha]-[nombre]/
143
+ Carpeta original eliminada: SI
127
144
  Specs sincronizadas: SI
128
145
  Tests: PASS
129
146
 
@@ -146,4 +163,5 @@ Quieres que continue con /refacil:up-code?
146
163
  - La sincronizacion de specs es OBLIGATORIA en la metodologia Refacil
147
164
  - La metadata de `.review-passed` debe persistirse separada en YAML (`review.yaml`) dentro de cada carpeta de spec
148
165
  - No eliminar artefactos, solo moverlos a archive/ para trazabilidad
166
+ - **La carpeta original en `openspec/changes/[nombre]/` NO debe sobrevivir al archivado** — ni para bug fixes (Paso 2A) ni para cambios regulares (Paso 2B). Usar `git mv` o `mv` (no `cp -r`) y verificar explicitamente. Si queda residuo, borrarlo con `rm -rf` antes del Paso 3.
149
167
  - Usa modo de salida **conciso** por defecto y **detallado** solo si el usuario lo pide (ver `METHODOLOGY-CONTRACT.md`)