Sextante — Noches de observatorio
Características principales
Motor de visibilidad: mes, fase lunar y altura mínima (Madrid)
Cielo del día: open / limited / closed; SKY_CLOSED → 409
Hold 15 min con expiresAt en servidor, sweeper ~30 s, 409 same-user y mutex cruzado
QR SVG en confirmación + check-in staff (segundo scan 409)
Cola viva post check-in: now-viewing y reordenar objetos
Puntos de meridiano derivados: 10 pts × partySize completed
Descripción
Sextante es la reserva online de un observatorio municipal para el visitante final. Elige cúpula, noche y franja, ve si el cielo está abierto y arma una lista de objetos que de verdad son visibles esa fecha en Madrid. El telescopio es exclusivo: un grupo por instrumento y franja. Retienes 15 minutos con expiresAt en servidor, confirmas y recibes ticket QR. El staff escanea el código en el umbral; la noche pasa a checked_in y la lista se convierte en cola viva (now-viewing + reordenar). En Mis noches consultas historial, cancelas con política 24 h y acumulas puntos de meridiano derivados (10 pts × partySize al completar). La capa de valor de verdad es el motor de visibilidad + cielo del día: un objeto no entra en el picker si no es visible, y SKY_CLOSED bloquea la venta.
Tecnologías utilizadas
Angular
TypeScript
SQLite