FreeTLab
863690168c
feat(multidispositivo): reconnection, impostor awareness and protocol fixes
...
Fixes
- SnapshotPartidaOnline no longer serializes esImpostor unless the game is
over. Every phase change was broadcasting the impostor roles in clear to
all clients.
- The impostor clue travels in its own field and only when the game enables
it. It used to be sent as the category key ("todas" when no category was
picked) and was overwritten by each phase snapshot.
- Eliminated players can no longer vote nor be voted for, on both the client
screen and the host listener.
- Nearby listeners are removed on dispose; votes are no longer dispatched
twice; votacionResultado no longer triggers two navigations.
- _jugadoresHostControlados handed the secret word to the host's own
impostors in the payload.
- Impostor cap unified as maxImpostoresPara(n) for both modes, and the
silent clamp in multi-device now reports the effective number.
- palabraAleatoria uses Random.secure.
Impostors know each other
- ConfigPartida.impostoresSeConocen, on by default. companerosImpostores is
nullable: null means nothing to show, an empty list means "you are the
only impostor".
Reconnection
- IdentidadDispositivo persists a stable device id; the host uses it as the
clientId so a phone that drops and returns is the same client. Falls back
to the endpointId for clients that do not send one.
- Usuario.absorbidoDe records the original owner when the host takes over a
disconnected player, and they are handed back automatically on return.
- New solicitarResync/resync messages: the host replies with the current
phase plus that client's own players, and the client jumps straight to the
running phase.
- Readiness is keyed by clientId instead of endpointId, and a disconnected
client no longer blocks the round.
- The retry gives up after three minutes, only reconnects to the host it
belonged to, and is cancelled correctly while shutting down.
Per-word clue support
- The word bank loader accepts both the old list-of-strings format and the
new one carrying a clue per word, falling back to the category clue.
Not verified on real devices: Nearby reconnection timing still needs two
Android phones.
2026-07-25 20:36:32 +02:00
FreeTLab
bad641653c
fix(test): make the suite runnable without device plugins
...
crearPartida clears the notes, which goes through SharedPreferences, and
ServicioNearby.dispose called notifyListeners after tearing the notifier
down. Both failed on plugin channels that do not exist in the test host.
Suite goes from 25 passing / 8 failing to a green run.
2026-07-25 20:36:15 +02:00
ShanaiaBot
553456836f
chore: bump version to 1.1.41+46 [ci skip]
2026-05-12 21:51:20 +02:00
FreeTLab
cee8c7c2ce
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Failing after 1s
Build & Deploy Farolero / Build APK + AAB release (push) Has been skipped
2026-05-12 21:50:18 +02:00
FreeTLab
8f78652ac6
Firma de la aplicación como pide play store
2026-05-12 21:50:16 +02:00
ShanaiaBot
bb4359656f
chore: bump version to 1.1.40+45 [ci skip]
2026-05-12 01:37:36 +02:00
FreeTLab
90ada9099f
Multitud de iconos más
Build & Deploy Farolero / Análisis de código (push) Successful in 14s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 1m46s
2026-05-12 01:36:41 +02:00
FreeTLab
158a7ae6a8
Iconografía básica
2026-05-12 01:20:19 +02:00
FreeTLab
5697c2a5a1
A ver si compila y publica en main
Build & Deploy Farolero / Análisis de código (push) Failing after 15s
Build & Deploy Farolero / Build APK + AAB release (push) Has been skipped
2026-05-12 01:11:59 +02:00
FreeTLab
7ee8c6ae2f
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
2026-05-12 01:11:02 +02:00
FreeTLab
1885c85de9
uso de imágenes y eliminación de innecesarias
2026-05-12 01:09:05 +02:00
FreeTLab
a055ed808c
más iconos
2026-05-12 00:44:33 +02:00
FreeTLab
4334e06b04
multiples iconografías
2026-05-12 00:40:40 +02:00
FreeTLab
be255d5ea3
algunos iconos PRO
2026-05-12 00:11:43 +02:00
ShanaiaBot
50cf83826c
chore: bump version to 1.1.39+44 [ci skip]
2026-05-11 23:22:04 +02:00
FreeTLab
532e3b84f1
correcciones
Build & Deploy Farolero / Análisis de código (push) Successful in 14s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 1m34s
2026-05-11 23:21:13 +02:00
FreeTLab
e60fc27d6f
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Failing after 17s
Build & Deploy Farolero / Build APK + AAB release (push) Has been skipped
2026-05-11 23:16:49 +02:00
FreeTLab
4599678e77
refactorización de pantallas
2026-05-11 23:16:38 +02:00
ShanaiaBot
0ba1038170
chore: bump version to 1.1.38+43 [ci skip]
2026-05-11 22:06:44 +02:00
FreeTLab
1929d86689
corrección a un error
Build & Deploy Farolero / Análisis de código (push) Successful in 22s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 2m13s
2026-05-11 22:05:07 +02:00
FreeTLab
1bad40cbf5
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Failing after 24s
Build & Deploy Farolero / Build APK + AAB release (push) Has been skipped
2026-05-11 21:58:19 +02:00
FreeTLab
3c5d98d6dd
literales y unificación de resultados en los dos modos de juego
2026-05-11 21:57:46 +02:00
ShanaiaBot
82ebb71ff6
chore: bump version to 1.1.37+42 [ci skip]
2026-05-11 21:12:16 +02:00
FreeTLab
8ecd1ead32
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Successful in 23s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 2m12s
2026-05-11 21:10:46 +02:00
FreeTLab
9007728310
A ver qué tal los nuevos botones ahora
2026-05-11 21:10:39 +02:00
ShanaiaBot
cd82d1ccf3
chore: bump version to 1.1.36+41 [ci skip]
2026-05-11 20:32:54 +02:00
FreeTLab
8f3e907781
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Successful in 24s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 2m19s
2026-05-11 20:31:09 +02:00
FreeTLab
e7c5b08ec0
Limpieza de peso de imágenes
2026-05-11 20:30:59 +02:00
ShanaiaBot
d03efcdda1
chore: bump version to 1.1.35+40 [ci skip]
2026-05-11 19:17:08 +02:00
FreeTLab
928cbd8a1d
Corrección de errores
Build & Deploy Farolero / Análisis de código (push) Successful in 52s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 2m17s
2026-05-11 19:14:49 +02:00
FreeTLab
df2659ab9d
Nuevos assets para otras pantallas (meta)
Build & Deploy Farolero / Análisis de código (push) Failing after 56s
Build & Deploy Farolero / Build APK + AAB release (push) Has been skipped
2026-05-11 19:04:45 +02:00
FreeTLab
d338e78612
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Failing after 41s
Build & Deploy Farolero / Build APK + AAB release (push) Has been skipped
2026-05-11 18:44:59 +02:00
FreeTLab
2503b64d34
nuevas pantallas
2026-05-11 18:44:51 +02:00
ShanaiaBot
cf639df1f3
chore: bump version to 1.1.34+39 [ci skip]
2026-05-11 18:06:48 +02:00
FreeTLab
f8545fc783
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Successful in 39s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 2m27s
2026-05-11 18:05:21 +02:00
FreeTLab
112a8a6142
Cambio de icono y traducciones
2026-05-11 18:05:13 +02:00
ShanaiaBot
8f97c4338b
chore: bump version to 1.1.33+38 [ci skip]
2026-05-10 23:55:29 +02:00
FreeTLab
4bf8a01a20
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Successful in 34s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 1m48s
2026-05-10 23:54:13 +02:00
FreeTLab
a93bab290a
más mejoras
2026-05-10 23:54:09 +02:00
ShanaiaBot
db718a1967
chore: bump version to 1.1.32+37 [ci skip]
2026-05-10 23:38:13 +02:00
FreeTLab
873a5b7f4a
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Successful in 42s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 1m55s
2026-05-10 23:36:39 +02:00
FreeTLab
a8494f7b01
corrección de botonesa, y por lo visto también traducciones
2026-05-10 23:36:31 +02:00
ShanaiaBot
1226385887
chore: bump version to 1.1.31+36 [ci skip]
2026-05-10 22:55:23 +02:00
FreeTLab
4751a607bd
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Successful in 33s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 1m43s
2026-05-10 22:53:46 +02:00
FreeTLab
fa7901019f
aplicadas correcciones
2026-05-10 22:53:41 +02:00
ShanaiaBot
8adaa0fbec
chore: bump version to 1.1.30+35 [ci skip]
2026-05-10 22:28:29 +02:00
FreeTLab
12af58d828
correcciones
Build & Deploy Farolero / Análisis de código (push) Successful in 35s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 1m49s
2026-05-10 22:27:10 +02:00
FreeTLab
76de0f88f1
Merge branch 'main' of https://git.freetimelab.es/FreeTLab/farolero
Build & Deploy Farolero / Análisis de código (push) Failing after 37s
Build & Deploy Farolero / Build APK + AAB release (push) Has been skipped
2026-05-10 21:59:46 +02:00
FreeTLab
79a66c2e82
nueva pantalla molona
2026-05-10 21:59:38 +02:00
ShanaiaBot
a2ddd78949
chore: bump version to 1.1.29+34 [ci skip]
2026-05-10 21:33:42 +02:00