🧨 El catálogo del POS borraba las mesas del dueño (y dos bombas de 422 que dejaban ciego al restaurante)
Por qué
preparando el viaje de diagnóstico a Bogo se encontró que /api/bridge/tables —que el agente postea SOLO, ~1 s después de arrancar y cada 10 min— iba a destruir el salón de Bogo al instalar. El POS deriva sus mesas de cantidadPendientes y las manda como externalId="Mesa 8", mientras el autopair les había puesto el código "8"; ninguna rama del emparejador reconocía eso (la rama por nombre exigía que la mesa NO tuviera código). Resultado: 11 mesas duplicadas con token nuevo (los QR impresos mueren)
Qué mejora
(1) el emparejador prueba código exacto → nombre exacto (sin exigir que falte el código) → número, y este último solo contra códigos puramente numéricos: se probó con una versión laxa y "B1" se casaba con "Mesa 1", que es peor que no emparejar porque le muestra al comensal la cuenta de otro; (2) un emparejamiento por número no pisa el código que la mesa ya tenía; (3) una lectura del POS ya no puede borrar una mesa: lo máximo que hace es apagarle el QR, que es reversible desde la pestaña Mesas; (