# Plan: [Título de la Feature]

> **Propósito:** Convertir el spec en un plan de implementación con diseño técnico, estructura de datos y contratos. Este documento lo completa el equipo técnico; el PM lo revisa para validar que entrega lo que el spec promete.
> **Cuándo usarlo:** Después de que el spec pasó el quality gate y antes de descomponer en tareas.
> **Cómo usarlo:** Copia este archivo junto al spec (ej. `specs/042-login-google-plan.md`), enlaza el spec en los metadatos y completa los campos `[entre corchetes]` con el equipo técnico.

## Metadatos

- **Autor(es):** [Nombre de quien escribe el plan]
- **Spec Reference:** [Link al spec-template.md correspondiente]
- **Estado:** [Borrador | En Revisión | Aprobado]
- **Fecha:** [YYYY-MM-DD]
- **Versión:** 1.0

---

## Technical Context

> El equipo documenta suposiciones y decisiones técnicas. El PM valida que estas decisiones no contradicen el spec.

### Decisiones Técnicas

| Decisión | Opción Elegida | Alternativas Consideradas | ¿Por qué esta? |
|----------|---------------|--------------------------|----------------|
| [Decisión 1] | [Opción] | [Alternativa A, Alternativa B] | [Razón] |
| [Decisión 2] | [Opción] | [Alternativa A, Alternativa B] | [Razón] |

### Suposiciones Técnicas

- [Suposición 1 — si es falsa, el plan cambia]
- [Suposición 2 — si es falsa, el plan cambia]

---

## Constitution Check

> Verifica que este plan cumple con las reglas del proyecto definidas en la constitution.

| Regla | ¿Se cumple? | Notas |
|-------|-------------|-------|
| [Regla de stack] | Sí / No / N/A | [Nota si aplica] |
| [Regla de arquitectura] | Sí / No / N/A | [Nota si aplica] |
| [Regla de calidad] | Sí / No / N/A | [Nota si aplica] |
| [Regla de seguridad] | Sí / No / N/A | [Nota si aplica] |

---

## Research (Phase 0)

> Investigación necesaria antes de empezar a construir. Si la investigación toma más de 1 día, probablemente no vale la pena.

| Pregunta | Método de investigación | Tiempo estimado | Resultado esperado |
|----------|------------------------|-----------------|-------------------|
| [Pregunta 1] | [Documentación / Prototipo / Consulta] | [X horas] | [Qué necesitamos saber] |
| [Pregunta 2] | [Documentación / Prototipo / Consulta] | [X horas] | [Qué necesitamos saber] |

---

## Data Model (Phase 1)

> Cómo se estructuran los datos. El PM valida: ¿esto captura toda la información que necesita el negocio?

### Nuevas Entidades

| Entidad | Campos | Tipo | Descripción |
|---------|--------|------|-------------|
| [Entidad] | [campo1, campo2, ...] | [Tipo] | [Descripción] |

### Entidades Modificadas

| Entidad | Cambio | Impacto | Migración necesaria |
|---------|--------|---------|-------------------|
| [Entidad] | [Qué cambia] | [Alto/Medio/Bajo] | [Sí/No — detalle] |

---

## Contracts

> Acuerdos entre sistemas (APIs, eventos, mensajes). El PM debe entender: ¿esto rompe algo que ya existe?

### APIs Nuevas

| Endpoint | Método | Request | Response | ¿Rompe algo? |
|----------|--------|---------|----------|-------------|
| `[ruta]` | GET/POST/PUT/DELETE | [Tipo/Formato] | [Tipo/Formato] | [Sí/No] |

### APIs Modificadas

| Endpoint | Cambio | Versión anterior | Versión nueva | Backwards compatible? |
|----------|--------|-----------------|---------------|---------------------|
| `[ruta]` | [Qué cambia] | [Payload anterior] | [Payload nuevo] | Sí / No |

### Eventos

| Evento | Producer | Consumer | Payload |
|--------|----------|----------|---------|
| [nombre.evento] | [Servicio] | [Servicio] | [Formato] |

---

## Riesgos y Mitigaciones

| Riesgo | Probabilidad | Impacto | Mitigación |
|--------|-------------|---------|------------|
| [Riesgo 1] | Alta/Media/Baja | Alto/Medio/Bajo | [Plan de mitigación] |
| [Riesgo 2] | Alta/Media/Baja | Alto/Medio/Bajo | [Plan de mitigación] |

---

## Definition of Ready (DoR)

> El plan está listo para pasar a tasks cuando:

- [ ] Todas las decisiones técnicas están documentadas
- [ ] El constitution check pasa sin excepciones
- [ ] Los contratos están definidos (APIs, eventos)
- [ ] Los riesgos están identificados con mitigación
- [ ] El PM revisó y aprobó que el plan entrega lo que el spec promete
