0000000000000000000000000000000000000000 44231d8f212ee72d09db6738b1fa152cddbd0d3d Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787735987 +0200	commit (initial): Fork inicial de Evony Mesh desde evony-hibrid-app-v2 @ 5a647b1 (:8792)
44231d8f212ee72d09db6738b1fa152cddbd0d3d dd4bfb1b188795313422dbdca94137ffba0e8765 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787743251 +0200	commit: Mesh Fase 0-2: multi-instancia, hub+latido, partición dinámica
dd4bfb1b188795313422dbdca94137ffba0e8765 1f2ed87d403e996ecdae7b523e3647af9d8ce27b Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787743843 +0200	commit: Mesh Fase 2: fix de tuning del CH (speedup real de la partición) + validación hardware
1f2ed87d403e996ecdae7b523e3647af9d8ce27b 9b9001f3212be15d0aaaf52945dbee4614aa3b83 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787744782 +0200	commit: Mesh Fase 3: store agregado híbrido (el "gran núcleo conjunto")
9b9001f3212be15d0aaaf52945dbee4614aa3b83 460e0bd88e708fc8c01e817427247156993cd562 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787745584 +0200	commit: Mesh Fase 4: rally-fill cross-account con ejército real (doble opt-in, default OFF)
460e0bd88e708fc8c01e817427247156993cd562 99032a887f58dc1b788e7a0e8e951c4a8c0f17a9 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787750049 +0200	commit: Hub UI en inglés + barra de stamina; fix de inestabilidad de los Pixels (watchdog por-nodo)
99032a887f58dc1b788e7a0e8e951c4a8c0f17a9 e308bf69b6132322588fefcb023bea84b87aff52 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787753961 +0200	commit: Mitigación #1 anti-freeze de los Pixels: memoizar localize + scan 15s->20s
e308bf69b6132322588fefcb023bea84b87aff52 31491089e736d17570c0f01fa4e52b517923b7c9 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787757950 +0200	commit: Fase 4b: /api/presets preserva el flag mesh_fill (antes lo tiraba la lista blanca)
31491089e736d17570c0f01fa4e52b517923b7c9 b02c68ea9b082f97e4ce3d95250f8ef54f88afb5 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787758878 +0200	commit: Hub: el pill del header muestra el estado del AGENTE·JUEGO, no la liveness
b02c68ea9b082f97e4ce3d95250f8ef54f88afb5 25c1288a5f06f9ff7eb20243af666b28dd899a19 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787759397 +0200	commit: Hub: vista de cobertura del mapa (qué franja escanea cada nodo + huecos)
25c1288a5f06f9ff7eb20243af666b28dd899a19 abd4d2d4b01c8a2515b96beaca22c3e38d8af63a Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787759772 +0200	commit: Hub: auto-cura de cobertura (reparte la franja de un nodo caído) + mini-tira por card
abd4d2d4b01c8a2515b96beaca22c3e38d8af63a b1e91a799194561da62abef7b1e1a8ea03098143 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787759950 +0200	commit: Hub: renombrar header a 'Alliance Mesh HUB'
b1e91a799194561da62abef7b1e1a8ea03098143 eb2742796ba8633c763b3bda79bbbabfbb7866f2 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787832001 +0200	commit: Fix definitivo freezes Pixels: PD-cache (elimina el gc.choose(PlayerData) periodico)
eb2742796ba8633c763b3bda79bbbabfbb7866f2 98c57c699c2dcbf7d186b01c8f73d6e007fb2980 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787832001 +0200	commit: Fase 5: rebalanceo del escaneo por THROUGHPUT (weighted) + whisper enrutado 'Whisper from'
98c57c699c2dcbf7d186b01c8f73d6e007fb2980 853b008bcd7de01af8d8ed47ef5666638b51ac82 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787834758 +0200	commit: Hub: login por formulario + cookie de sesion para el dashboard (creds por env)
853b008bcd7de01af8d8ed47ef5666638b51ac82 85982ee1971c172292b7ea825fb8ddf627637e5e Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787836362 +0200	commit: Nodo: nombre de cuenta en title + pill de estado, y whisper enrutado a nodos con login
85982ee1971c172292b7ea825fb8ddf627637e5e 0f834c531f05a04b05d753138e82bf4894de585c Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787839201 +0200	commit: Hub Shortcuts: vista GLOBAL de la malla (familias + MyPresets/ActiveAttacks/Bubble/EventBoss)
0f834c531f05a04b05d753138e82bf4894de585c 961653fae427e3f2b8a186929e73601404a0da2d Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787839862 +0200	commit: Hub Shortcuts: patron de dos capas (Menu de seleccion + vista de preferencias) como los bots
961653fae427e3f2b8a186929e73601404a0da2d bb08117dd825ffe2f5b37624995f222b95ff8b56 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787840403 +0200	commit: Hub Shortcuts: Menu muestra TODAS las familias (+ expander de vacias) y whisper fijo a RexValerius
bb08117dd825ffe2f5b37624995f222b95ff8b56 e19ba3fb804594d19af54180b7a7d99658f1c0d6 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787841089 +0200	commit: Traducir texto de cara al usuario a ingles (UI + logmsg) y whisper 'Send to' en el hub
e19ba3fb804594d19af54180b7a7d99658f1c0d6 e159186cf540e69c3bf864842f805ade02cbcdeb Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787841490 +0200	commit: Hub Shortcuts: panel al fondo, 'Send whisper to' en la barra, filtros de attacks/bubble
e159186cf540e69c3bf864842f805ade02cbcdeb b9fab13ce34fdd34bb964491fe99db54e3f2c5b4 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787841646 +0200	commit: Hub Shortcuts: boton Copy en las listas de coords (mismo formato que los bots)
b9fab13ce34fdd34bb964491fe99db54e3f2c5b4 ad62db7e0f5fcb761bbbf86f4dcfe5b1b3444835 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787842052 +0200	commit: Hub: sesion persistente (sin re-login por reinicio), Copy/whisper en Attacks+Bubble, tick robusto
ad62db7e0f5fcb761bbbf86f4dcfe5b1b3444835 6f8b2795fbad0c02a84e585c52f204114b0c679a Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787842398 +0200	commit: Hub Shortcuts: recordar el destinatario de 'Send whisper to' (global, persistido)
6f8b2795fbad0c02a84e585c52f204114b0c679a d94365e39e68166134bc7635539b9c0cd337c2f2 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787842687 +0200	commit: Hub Shortcuts: Bubble como tabla de 4 columnas (Name, Alliance, Power, Coords)
d94365e39e68166134bc7635539b9c0cd337c2f2 2b9dfb7fd45281ea549edfd6edbe9ba8c931ce46 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787848124 +0200	commit: Hub: botones Stop / Restart por nodo en cada card
2b9dfb7fd45281ea549edfd6edbe9ba8c931ce46 8b9faf63cd8f9f99654fcad8abf509d77814d84b Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787851283 +0200	commit: Restart sin race + barras de stamina 3 estados en el hub
8b9faf63cd8f9f99654fcad8abf509d77814d84b 4cee64988058f53d128c8767b528890a4e173b6c Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787851832 +0200	commit: Versiona los shortcuts de la malla + fix wait_node_healthy con login
4cee64988058f53d128c8767b528890a4e173b6c 305346ec2e65abf7b5035484e9924b28e34c2f19 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787851989 +0200	commit: gitignore: ignora nodes/ (estado runtime por nodo, no versionar)
305346ec2e65abf7b5035484e9924b28e34c2f19 9e038dc3c845fbbfd34cb58b7e24fa780f8cd79b Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787853548 +0200	commit: Restart: espera operativa real (world map) + botones Stop/Restart al fondo del card
9e038dc3c845fbbfd34cb58b7e24fa780f8cd79b 4e424ec22c6f72ada99f6e2b398cc29ec1a12e04 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787855247 +0200	commit: Restart: espera operativa fiable (fix stale + deadline holgado); fast-path afinado
4e424ec22c6f72ada99f6e2b398cc29ec1a12e04 cea923116d8ca20ae5ff8a4791cd5b1af8ba6e3b Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787906065 +0200	commit: Malla: fix freezes (churn de particiones), share del mapa, y re-rally sobre muertos (2XS)
cea923116d8ca20ae5ff8a4791cd5b1af8ba6e3b b75beed9bbb53a057c3e2d669aaffeb0d1347020 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787906367 +0200	commit: FAMILIES: añade Temple Guard (Normal L1 / Elite L2) como event
b75beed9bbb53a057c3e2d669aaffeb0d1347020 e3c1890a0c161284933d028735543c11ef3e861f Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787994085 +0200	commit: Hub: agrupa summary + epoch + coverage en un icono de info (popover)
e3c1890a0c161284933d028735543c11ef3e861f c00242b4532ae0daac8d76dc025a0794117f8320 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787994298 +0200	commit: Hub: info button más visible (más grande, borde azul fijo, hover fondo azul)
c00242b4532ae0daac8d76dc025a0794117f8320 24084e321c1ffd49b8023e10500dd049f7c7ed0d Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787994827 +0200	commit: Hub: la rejilla de cobertura ya se muestra en modo weighted (no solo count)
24084e321c1ffd49b8023e10500dd049f7c7ed0d 5fb3a59b49c24083211821c9367a862ec317bfbc Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787995123 +0200	commit: Hub: default BALANCE_MODE = weighted (flota heterogénea + churn ya mitigado)
5fb3a59b49c24083211821c9367a862ec317bfbc 3d95ceae56899677c1427f811496b72852558736 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787995275 +0200	commit: Hub: icono de info a la derecha del header (popover alineado a la derecha)
3d95ceae56899677c1427f811496b72852558736 84a7ed8abd2cfe3b445c19bb30285259fa7b462f Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787995766 +0200	commit: Hub: pill de card muestra estado del AUTO de cada bot (chip con color)
84a7ed8abd2cfe3b445c19bb30285259fa7b462f deee3d329955ab4ca952a49d44b543b1138f2366 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787996421 +0200	commit: Hub: pills en columna (estado + AUTO) y oculta IP/puerto en cada card
deee3d329955ab4ca952a49d44b543b1138f2366 b4d48285ad579a5b62cdb34521f7e0839b8c76f5 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787996955 +0200	commit: Hub: switch AUTO ON/OFF por card (control del auto-farm de cada bot)
b4d48285ad579a5b62cdb34521f7e0839b8c76f5 f10b251d2b92cb7a7cb1ef3f1ef15c41549fe55d Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787997169 +0200	commit: Hub: switch AUTO a la izquierda y pill de estado a la derecha (misma fila)
f10b251d2b92cb7a7cb1ef3f1ef15c41549fe55d 67f534423589fc21906aeeb7c3698981fe706885 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787997657 +0200	commit: Hub: estilo de estado de la card = border completo + fondo tintado (no border-left)
67f534423589fc21906aeeb7c3698981fe706885 93cf5beafecc011a4b0b1b61e32c66e5b341786d Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787998451 +0200	commit: Bot: checkbox 'mesh-fill' en el editor de presets (marca sin editar el estado a mano)
93cf5beafecc011a4b0b1b61e32c66e5b341786d f675a0434ab9066ad649277380da2590da17b2a3 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1787999667 +0200	commit: Mesh-rally: ocultar + desactivar temporalmente (quirúrgico, reversible)
f675a0434ab9066ad649277380da2590da17b2a3 c4a5f56c35192dc14ecd3cab22da1a7b4d2f8ff1 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788167112 +0200	commit: Daily tasks: Alliance Help ("Help All") automático + widget en la UI del bot
c4a5f56c35192dc14ecd3cab22da1a7b4d2f8ff1 1333fe2897e7f016260ba56ce805ce5faeaaf1cc Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788167520 +0200	commit: Bot UI: mueve el widget 'Daily tasks' justo debajo de 'Map scanner'
1333fe2897e7f016260ba56ce805ce5faeaaf1cc 5453703f51dca01f84526203691eb8d2267464a1 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788167949 +0200	commit: Daily tasks: traduce a inglés todo el texto de usuario del widget/Alliance Help
5453703f51dca01f84526203691eb8d2267464a1 a70ac1ff3187aeb46ff9bff5c98c48fcb00999d1 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788168099 +0200	commit: Daily tasks: comentarios del feature Alliance Help a inglés
a70ac1ff3187aeb46ff9bff5c98c48fcb00999d1 279a75c05e0e09fdc4bd390fa118cf191904b0bf Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788172169 +0200	commit: auto-fire: escalonar disparos (A) + detección rápida de fantasma (B) contra sesiones con lag (2XS)
279a75c05e0e09fdc4bd390fa118cf191904b0bf 47e5eadb96ef2ac4c2f6c1f7aa98b14292855cee Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788176653 +0200	commit: Daily tasks: Champion greet (10/día @120s) + interact (15/día @80s)
47e5eadb96ef2ac4c2f6c1f7aa98b14292855cee 353e94a88db4d7e0ac9070ab702703b08197d0e7 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788176874 +0200	commit: Champion widget: un solo switch (greet+interact) + oculta el campo champion id
353e94a88db4d7e0ac9070ab702703b08197d0e7 5fde029c23660217ba2ce47f1bd8a50c06635951 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788177105 +0200	commit: Daily tasks widget: quita los subtítulos descriptivos de Alliance Help y Champion
5fde029c23660217ba2ce47f1bd8a50c06635951 8dc2546ac889781b90642a3795dccb55d8a4be94 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788183400 +0200	commit: Fix footgun latente: gen_states no debe armar el FIREHOSE al fallar
8dc2546ac889781b90642a3795dccb55d8a4be94 32161b90e27678bee519fe71cca137e352ec9ff4 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788186276 +0200	commit: Daily task: VIP daily chest (get_vip_free_gift) con flag anti-spam leído del juego
32161b90e27678bee519fe71cca137e352ec9ff4 479e161e25d5e9e2b1eca40ed3e54c2d42b28616 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788186458 +0200	commit: VIP daily: endpoint /api/vip_level para fijar el __vip (nivel) por nodo
479e161e25d5e9e2b1eca40ed3e54c2d42b28616 e7e27c6ae709c58153a784ec43aadceb0ca413c7 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788188068 +0200	commit: VIP daily chest: input de nivel VIP por bot en el widget
e7e27c6ae709c58153a784ec43aadceb0ca413c7 11e8b054cc999fb9fa96b4c88dcbc65eefcefd96 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788247619 +0200	commit: Hub: color del card por estado real del bot + fila Shield con ETA
11e8b054cc999fb9fa96b4c88dcbc65eefcefd96 55c02eb68e4efd9ae6b5f80ad7d56624e9c96615 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788247985 +0200	commit: Hub BUBBLE: sin icono, label uppercase destacado, 'Active', color por ETA + aura crítica
55c02eb68e4efd9ae6b5f80ad7d56624e9c96615 53e1b1a00fb87bf45949955b7cc82d54ed47ff16 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788248307 +0200	commit: Hub BUBBLE: ETA a 10px + botón '↻ renew' para renovar la burbuja manualmente
53e1b1a00fb87bf45949955b7cc82d54ed47ff16 1386ecb9ffc45092599c6af86c0b33b83f49f95e Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788248407 +0200	commit: Hub: botón renew de la burbuja más grande y en mayúsculas (↻ RENEW)
1386ecb9ffc45092599c6af86c0b33b83f49f95e f730ee6acbbf26a8f73412e03b537c9586c0ed1a Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788248438 +0200	commit: Hub: botón RENEW de la burbuja 2px más pequeño (9.5px)
f730ee6acbbf26a8f73412e03b537c9586c0ed1a 42bf43715d71418f38ad6fd6cb09b92c3f004f35 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788249185 +0200	commit: Hub: botón RENEW con borde azul, más redondeado y fondo azul claro translúcido
42bf43715d71418f38ad6fd6cb09b92c3f004f35 92685799a8a3198475a71a6a17ef3b73ff3d161b Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788249218 +0200	commit: Hub: quita el icono del botón RENEW (solo texto)
92685799a8a3198475a71a6a17ef3b73ff3d161b 19823b0fa60d66ab162b4fe4710b4fabbc048897 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788249776 +0200	commit: Hub card: desplegable 'More Info' (Last heartbeat + Capacity + Reply ratio·freezes) + margin en bubble
19823b0fa60d66ab162b4fe4710b4fabbc048897 b7b1e02aab4b0b980586bef3c1dd5f5dfabe523f Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788251373 +0200	commit: Hub: guardián de burbujas server-side (nunca caer) + avisos toast/notificación
b7b1e02aab4b0b980586bef3c1dd5f5dfabe523f fc234b1a2c6513992278b67b7cc37805bb452b7e Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788253210 +0200	commit: Hub: panel de Settings (⚙) + aviso de burbuja por whisper (sección 1)
fc234b1a2c6513992278b67b7cc37805bb452b7e 71b420ff77b9e18347926f70aecc97d7cd6471f9 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788253975 +0200	commit: Hub: icono ⚙ del gear más grande (36px / 22px)
71b420ff77b9e18347926f70aecc97d7cd6471f9 b714cb043b46b307e096adaac17e1149c2d71bb4 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788254058 +0200	commit: Hub: botón gear al tamaño de .infobtn (27px), solo el glifo ⚙ más grande (21px)
b714cb043b46b307e096adaac17e1149c2d71bb4 eb79080f110fad08f2288b6a42e4fd057262d988 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788256142 +0200	commit: Scanner: capturar sub-cities (color/owner/shield) + player server_id del reply del worldmap (sin hook)
eb79080f110fad08f2288b6a42e4fd057262d988 75db2137fc98101b70eddd64683af1eb74801dff Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788256914 +0200	commit: Scanner tabs backend: Resources (WCFG + occupancy), Subcities, SVS, Farm endpoints
75db2137fc98101b70eddd64683af1eb74801dff 8d6afd7e9eda46333e2dea5efbb8c225cc07bc93 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788257317 +0200	commit: Hub: Scanner section (Resources/Farm/Subcities/SVS tabs) after Shortcuts
8d6afd7e9eda46333e2dea5efbb8c225cc07bc93 6ccc3815ec1e8cbb24df7b06ba0ad8bfe9b6fce7 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788257571 +0200	commit: Hub: move scanner tabs beside Shortcuts (drop Scanner parent), remove tab icons
6ccc3815ec1e8cbb24df7b06ba0ad8bfe9b6fce7 f890fe9b3ca882f3a68e4382699ff411dbb155fd Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788257858 +0200	commit: bot_web: retry config dump until WCFG loads too (not just MONCFG)
f890fe9b3ca882f3a68e4382699ff411dbb155fd 66013c3fdf0355879d750ed2fe31b6f5a2c7e359 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788259138 +0200	commit: Scanner tabs: replicate old-backend table/filter format; drop Farm tab
66013c3fdf0355879d750ed2fe31b6f5a2c7e359 18c24053de57eb005764d610b173e9d7c3d58e21 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788259576 +0200	commit: Subcities tab: remove Power column (not needed); default sort Quality
18c24053de57eb005764d610b173e9d7c3d58e21 bea8cd173a1e1c3982a3f6fcd5a8639388fd69b4 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788259661 +0200	commit: Subcities tab: remove Bubble column (not needed)
bea8cd173a1e1c3982a3f6fcd5a8639388fd69b4 c31444b4f3719e091f8ff2d4a07b33281bf1332f Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788259889 +0200	commit: Scanner tabs: default sort Resources=Available desc, Subcities=Quality desc
c31444b4f3719e091f8ff2d4a07b33281bf1332f 9223db024841c08b3c5edf317eedb6ef3dc95225 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788260135 +0200	commit: Hub: .sclist vertical padding 10px -> 0
9223db024841c08b3c5edf317eedb6ef3dc95225 004a5cbf5d2d7b5329c132ccea9706858846a6a4 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788260275 +0200	commit: Hub: .sntab.on and .scbtn background -> #1b5296
004a5cbf5d2d7b5329c132ccea9706858846a6a4 eda6b558cc1d239aab54257dd8323945fb70d07a Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788260452 +0200	commit: Hub: make Shortcuts and scanner tabs mutually exclusive
eda6b558cc1d239aab54257dd8323945fb70d07a 6a3180f9d247948992a8ca11019a0a8e1dee576f Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788260762 +0200	commit: Hub Shortcuts: scroll results panel into view when it's off-screen
6a3180f9d247948992a8ca11019a0a8e1dee576f 5b144a056b580e48a7b1245031420bc007f673a1 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788261379 +0200	commit: Hub: mobile responsive (<=640px) — reclaim padding, stack filters, touch-scroll tables
5b144a056b580e48a7b1245031420bc007f673a1 8cb9da2dc7492eee73fcab3ddcc9acd43d7f335f Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788261434 +0200	commit: Hub mobile: hide #scMeta ('N on map') in the tabs row (declutter)
8cb9da2dc7492eee73fcab3ddcc9acd43d7f335f ecb3aab150b1b6f6c6b2e031277fc9e00a09ffec Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788261715 +0200	commit: Hub mobile: compress tab filters (tighter labels/padding/gaps)
ecb3aab150b1b6f6c6b2e031277fc9e00a09ffec 888204f7382a06f0213463f4a3cca923bdf37e26 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788262057 +0200	commit: Hub info popover: mobile edge-pinned + close X (all versions)
888204f7382a06f0213463f4a3cca923bdf37e26 e76f9c660cc88e28262c0f061b67ec2ce621b27d Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788262188 +0200	commit: gitignore: ignore hub_settings.json (runtime settings state)
e76f9c660cc88e28262c0f061b67ec2ce621b27d ccd4209c2acf28325a3a44ecf030203792f18bbd Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788264109 +0200	commit: bot_web: stale-stamina detector (proactive refresh when GetStamina freezes)
ccd4209c2acf28325a3a44ecf030203792f18bbd e6eab59f1aad72abcae58c849bd09711a05bdfdd Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788275700 +0200	commit: Hub Shortcuts: show only fire-eligible-fresh targets (drop ghosts)
e6eab59f1aad72abcae58c849bd09711a05bdfdd 5f576261fd5024e76404da2bda2a10bf6db7af52 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788330714 +0200	commit: mesh: defer partition re-apply after (re)attach until game is stable (anti cold-load freeze loop)
5f576261fd5024e76404da2bda2a10bf6db7af52 2b8da57d340013c0c4dd7e247d5e8537d301ecb2 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788331303 +0200	commit: bubble alert: lower threshold 2h->90min, text 'BUBBLE LOW (Nmin): <node>', drop trailing level
2b8da57d340013c0c4dd7e247d5e8537d301ecb2 189be99f7d938e4192ca2d4aea12dad2c243c582 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788341925 +0200	commit: Hub: Hard Reset backend for physical nodes (full device reboot recovery)
189be99f7d938e4192ca2d4aea12dad2c243c582 dcd52db0732771a9a5dd8580f355e8736c253af4 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788345209 +0200	commit: Hard Reset: UI button + English dialogs + concurrency/pipe hardening
dcd52db0732771a9a5dd8580f355e8736c253af4 cb92c140d2d0df6681e2f0ca7c5e39e84594cbcf Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788346861 +0200	commit: Hard Reset: extend to emulator nodes (AVD cold-boot)
cb92c140d2d0df6681e2f0ca7c5e39e84594cbcf a69504b8fd84449d628f12213542b1d3ba149535 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788347084 +0200	commit: Hub: move Hard Reset to its own full-width row below Stop/Restart
a69504b8fd84449d628f12213542b1d3ba149535 4e99024c22010292a9051cb0871fedb94d8a7757 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788361490 +0200	commit: Daily: Alliance Science auto-donation (spread across researches)
4e99024c22010292a9051cb0871fedb94d8a7757 d184123d357e3e366d9807d891057708db98ec58 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788362616 +0200	commit: Hub/widget: drop the Alliance Science description line
d184123d357e3e366d9807d891057708db98ec58 97bc4e6de9cc69ecb658442fcee7b613d44607db Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788951539 +0200	commit: Alliance Help: help each pending request by its real id (help_id=0 helped nobody)
97bc4e6de9cc69ecb658442fcee7b613d44607db 9bac16033eec6161084dc29334e5b2c46e40e6e2 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788951539 +0200	commit: mesh hub: penalize a node's balance cap by its recent relaunch rate (anti-churn)
9bac16033eec6161084dc29334e5b2c46e40e6e2 defd791cf2e8e4d95e054183c7c4dfe38c49c7f1 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788964937 +0200	commit: Champion daily: pick beauty real + Auto-join: 1 join/ciclo espaciado (fix cooldown global)
defd791cf2e8e4d95e054183c7c4dfe38c49c7f1 d27b493d5297685d141c59ae23e0271c0fcc8202 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788967563 +0200	commit: Hub: "Whisper From" global (target-coord whispers usan el mismo select que el bubble alert)
d27b493d5297685d141c59ae23e0271c0fcc8202 c603f434b02543106b68713b00c1c6d0c992d793 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1788968236 +0200	commit: Hub Shortcuts: resaltar el estado seleccionado (pills de resultados + botones dorados)
c603f434b02543106b68713b00c1c6d0c992d793 a0c3d7e9b33745e7f87fb21b471673a46967078a Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789028342 +0200	commit: Estabilidad: tracking LOCAL de stamina (mata el reinicio-cada-20min por GetStamina stale)
a0c3d7e9b33745e7f87fb21b471673a46967078a a65c5177555593cecd3a01677979d89bf4e0e4d1 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789037366 +0200	commit: Champion daily DEFINITIVO: manejar por el contador REAL del server (no ciego al enviar)
a65c5177555593cecd3a01677979d89bf4e0e4d1 349d8b7cc02f8adee34334ffde69a81b90020c96 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789039446 +0200	commit: Champion: corregir mapeo greet<->interact (greet=ask_count tope10, interact=flirt_count tope15)
349d8b7cc02f8adee34334ffde69a81b90020c96 d817d39c39770f7bcd5c898e03d026585143ed37 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789042498 +0200	commit: Auto-join: priorizar por urgencia (mst) + JOIN_SPACING 12->8 (rallies casi simultaneos)
d817d39c39770f7bcd5c898e03d026585143ed37 e2f5b21ca69d92695e2de53c04d681d67853ebb4 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789054308 +0200	commit: Stamina tracking: clamp del coste aprendido [5,100] + descarta muestras >120/marcha
e2f5b21ca69d92695e2de53c04d681d67853ebb4 ba8a739c697cd8a39a06fd851ae2381c90a9ce6f Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789117927 +0200	commit: Estabilidad: sin stamina NO reiniciar el juego + guard anti-falso-kick (app SIEMPRE arriba)
ba8a739c697cd8a39a06fd851ae2381c90a9ce6f 29f2905e0c02515ade421a0f6e4afc132ff0c10f Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789369479 +0200	commit: Bot UI: verde MÁS CLARO en Target monsters para los asignados a un preset
29f2905e0c02515ade421a0f6e4afc132ff0c10f 8bf9a793a8bf16a8008926298c18cf0dc5fb7b07 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789374468 +0200	commit: Bot UI fix: la tabla Target monsters no se re-pintaba tras cargar PRESETS (verde-claro no salía)
8bf9a793a8bf16a8008926298c18cf0dc5fb7b07 6a685cfcc8a962429011fd45b9e6757c98ee1013 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789375341 +0200	commit: Bot UI: verde intermedio (opacidad .40) para targets en preset + fix render tras loadPresets
6a685cfcc8a962429011fd45b9e6757c98ee1013 420578423d680de06c5c1cb329acf0ec9de1d453 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789375665 +0200	commit: Bot UI: bajar opacidad del verde de targets-en-preset (.40 -> .22, más suave)
420578423d680de06c5c1cb329acf0ec9de1d453 420578423d680de06c5c1cb329acf0ec9de1d453 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789549186 +0200	checkout: moving from main to feature/lume-train-t1-and-dasea-follow-user
420578423d680de06c5c1cb329acf0ec9de1d453 9757d2f5f8c94398619c56f665432b15ca5b11f0 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789549200 +0200	commit: Features: Entrenar T1 montada (Lume) + Follow-user con teleport (DaSeaDoe)
9757d2f5f8c94398619c56f665432b15ca5b11f0 6f76bed05d667cf07806959abbd9c27ea75f0a14 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789550886 +0200	commit: TRAIN Lume: reinicio de fin-de-training con el mecanismo de Refresh Stamina
6f76bed05d667cf07806959abbd9c27ea75f0a14 04fb2dc4f2f48e254fcfc4c395d02f8f5ac6b304 Dani Costa <danicosta@MacBook-Pro-de-Dani-3.local> 1789570315 +0200	commit: FIX CRÍTICO steal: guard ABSOLUTO anti-fuego-amigo (nunca robar a la alianza propia)
