Repository navigation
Changelog
Todas las novedades destacables de ZetaBus se documentan en este fichero.
El formato sigue Keep a Changelog y el
proyecto se adhiere a Semantic Versioning.
1.1.0 - 2026-10-10
Cambiado
- El aviso de horarios oficiales caducados deja de salir como banda en todas las páginas y
pasa a vivir en «Estado del servicio», que es donde se explica el estado del dato. - «Estado del servicio» ya no dice «Datos al día» si los horarios oficiales han caducado:
tiene un quinto veredicto, «Horarios oficiales caducados», que explica qué sigue al día
(llegadas en tiempo real, desvíos de hoy) y qué puede no coincidir (recorridos y horarios
teóricos). Sale solo con los desvíos de hoy al día; si la actualización nocturna ha
fallado, manda «Datos desactualizados».
Arreglado
- El aviso de la banda se calculaba al construir la web, no al abrirla: en la portada decía
«hace 4 días» cuando eran 5, y entre el 6 y el 9 de octubre no avisó de la caducidad. Al
vivir solo en «Estado del servicio», que se calcula en cada visita, el dato es el de ahora.
1.0.0 - 2026-07-26
Primera versión. ZetaBus está desplegado y en vivo en
zetabus.antonioblanquez.es. Al ser la versión
inicial, todo es nuevo: no hay una versión anterior respecto a la que cambiar o
corregir nada.
Added
- Visor en vivo de los autobuses de Zaragoza: las 44 líneas y 934 paradas, con la
posición GPS real de cada vehículo, no interpolada. - El sello del proyecto — «cuando no lo sabe, lo dice»: la edad del dato siempre a la
vista («Datos de Avanza hace 6 s»), y una parada sin servicio se muestra vacía en vez de
inventar un autobús que no viene. - Detección de desvíos por comparación: cruza el GTFS oficial con el recorrido que el
operador publica para hoy y deduce las paradas por las que no se pasa, tachadas y
con su fuente al lado. No lo transcribe nadie a mano: se apaga solo el día que restauren
la ruta. - Cruce honesto de fuentes que se contradicen (GTFS del Punto de Acceso Nacional + web
del operador + tiempo real): enseña qué dice cada una y quién lo dice, sin adjudicar. - Vista de parada: los minutos que faltan arriba del todo, el mapa debajo, filtro por
línea y selección cruzada mapa↔lista. - Ficha de vehículo: modelo, longitud (articulado de 18 m o sencillo de 12) y
combustible, con la fuente de cada campo —no del vehículo entero: del campo—. - Vista de línea: el recorrido real de hoy en orden, el desvío vigente si lo hay, los
horarios de terminal (primeras y últimas salidas con la frecuencia media) y los
transbordos en cada parada. - Las 9 paradas «solo-barrido» visitables: postes de desvío que el GTFS no conoce,
resueltos con su coordenada tomada del feed del operador. - Buscador por número de poste, nombre de parada o línea, tolerante a acentos y
abreviaturas («avda», «Av.», «Carlos Quinto» para «Carlos V»). - Panel de estado público (
/estado): cuánto se le pide al operador y con qué frescura. - Regeneración nocturna del índice de correspondencias (qué líneas pasan hoy por cada
poste, separando las de siempre de las que hoy pasan por un desvío), vía cron y
POST /api/regenerarprotegido por un token en cabecera. - Sitemap y tarjeta Open Graph al compartir el enlace.
- Modo demo (
?fingir=) para ver los casos raros —fuente caída, respuesta ilegible,
línea desviada— sin tocar la red. - Accesibilidad medida sobre la pantalla pintada: ningún estado se comunica solo con el
color, el número de cada línea se lee sobre cualquier fondo por contraste calculado, y
zonas táctiles, contraste y navegación por teclado se verifican sobre el píxel pintado. - Trato cortés con el operador: caché compartida en servidor (10 personas en la misma
parada = 1 petición, no 10), techo de peticiones por segundo, tiempo de espera,
cortacircuitos, cero peticiones cuando nadie mira, y un User-Agent identificable. - Sin base de datos, sin cuentas, sin registro, sin cookies propias, sin analítica.