Mapa global de specs de CitaClara (Constitución I)

Cada spec tiene un único dominio propietario. El propietario es el dominio, no una persona.

Nº Nombre Dominio propietario Estado Consume (flujo) La consume
001 nucleo-agenda agenda y recepción Implementada — (es la base) 002, 003, 004, 005, 006, 007
002 portal-paciente experiencia del paciente Implementada 001, 005, 006, 007 —
003 recordatorios-cita comunicación con el paciente Implementada 001, 005, 006, 007 —
004 panel-analitica analítica de clínica Implementada 001, 006 —
005 cancelacion-paciente agenda y recepción (transversal) Implementada 001, 006 002, 003, 007
006 tiempo-referencia transversal (tiempo) Implementada 001 (configuración de jornada y calendario) 001, 002, 003, 004, 005
007 identidad-paciente transversal (identidad) Implementada 001, 005 002, 003

«Consume» significa llamada o lectura en flujo de ejecución. La 005 presupone identidad verificada según la 007 (005 FR-002), pero es obligación del llamante, no una llamada: por eso 007 no figura en su columna y en cambio 005 sí figura en la de 007 (delegación del enlace verificado, 007 FR-006).

Estados: borrador = spec redactada sin plan ni código; en revisión = con plan/tareas en curso o pendiente de aprobación; implementada = con código y suites en verde.

  • 001 — nucleo-agenda. La agenda de recepción: clínicas, profesionales, servicios, fichas de paciente y citas con su máquina de estados (reservada → completada | cancelada | no_asistida), regla antisolape RN1 y semilla determinista Eleva.
  • 002 — portal-paciente. La página personal del paciente: ver sus citas en tres secciones y cancelar las futuras con 24 h de antelación, entrando con correo + teléfono sin cuentas ni contraseñas.
  • 003 — recordatorios-cita. El proceso diario que recuerda por email cada cita reservada en ventana 24–48 h (modo simulado .eml) y ofrece cancelar con confirmación para convertir no-shows en huecos libres.
  • 004 — panel-analitica. La página de solo lectura con tasa de no asistencia, ocupación semanal, ingresos por servicio al céntimo y evolución de 8 semanas, todo acotado a la clínica.
  • 005 — cancelacion-paciente. El caso de uso único cancelarCita que ejecuta toda cancelación iniciada por el paciente desde cualquier canal, con catálogo único de rechazos y atomicidad.
  • 006 — tiempo-referencia. El vocabulario temporal compartido: instante «ahora» único, zona Europe/Madrid, jornada y calendario configurables, y las ventanas derivadas con sus bordes escritos una sola vez.
  • 007 — identidad-paciente. La identidad compartida del paciente (pacienteId, normalización única, regla de duplicados, sesión del portal y enlace verificado) que autoriza a todos los canales.

Enmiendas cruzadas aplicadas

Enmienda Spec afectada Propuesta por Acordada por Estado
Añadir telefono (obligatorio) a la entidad Clínica, en modelo de datos y semilla 001-nucleo-agenda (Principio I; 001 FR-001) 002-portal-paciente Antonio Natusch Aplicada (jul2026) — desbloquea la 002
Añadir precioCongeladoCentimos (copia al reservar, inmutable) a Cita 001-nucleo-agenda (001 FR-006) 004-panel-analitica Antonio Natusch Aplicada (jul2026) — fuente para 003 y 004
Añadir diasLaborables (defecto Lun–Vie) a Clínica 001-nucleo-agenda 006-tiempo-referencia Antonio Natusch Aplicada (spec + data-model; falta implementarla en semilla y código)