Antonio Herrera.
2Fase 2 · SDD Lifecycle

Definición de la especificación

Primera capa formal del ciclo · De la intención a la spec verificable

Por Antonio Herrera Publicada en junio 2026 2 min de lectura
4/14
Crear la propuesta con OpenSpec
asistente compatible (Claude Code, Cursor…)
# Nombre corto de cambio /opsx:propose add-transaction-filtering # Con descripción natural /opsx:propose "Añadir filtrado de movimientos por fecha, importe y categoría"
Artefactos generados
estructura generada en openspec/changes/
openspec/ changes/ add-transaction-filtering/ proposal.md # Qué y por qué (negocio) design.md # Cómo (técnico) tasks.md # Trabajo dividido specs/ transactions/ spec.md # Comportamiento verificable
Contenido de proposal.md
proposal.md
## Problem Los usuarios no pueden localizar movimientos concretos fácilmente. ## Goal Filtrado por fecha, importe y categoría con paginación. ## In Scope - Filtro por fecha inicio / fecha fin - Filtro por importe mínimo / máximo - Filtro por categoría · Paginación ## Out of Scope - Exportación a Excel · Búsqueda semántica - Categorización automática · Consulta multiusuario ## Risks - Rendimiento en tablas grandes - Posible fuga de datos entre usuarios
Escenarios verificables en spec.md
specs/transactions/spec.md
### Scenario: Valid date range - GIVEN an authenticated user - AND the user has transactions in January - WHEN the user searches with startDate and endDate - THEN the system SHALL return only transactions within that range ### Scenario: No matching transactions - GIVEN an authenticated user - WHEN the filters return no results - THEN the system SHALL return an empty list - AND the UI SHALL show a friendly empty state message
Validación antes de avanzar
terminal
openspec validate openspec validate --strict
✓ Gate 2 — Spec Ready
✓
Historia vinculada
✓
Criterios de aceptación completos
✓
Alcance definido
✓
Fuera de alcance definido
✓
Riesgos documentados
✓
Spec validada (openspec validate)
✓
Tareas atómicas creadas
✓
API impact identificado
✓
QA involucrado desde el inicio
Hablemos →