GEOSTARK NOMINA - PARCHE v7.3 BLINDAJE DE PRESTACIONES SOCIALES

Objetivo:
- Evitar generación de prestaciones si el trabajador activo no tiene fecha de ingreso válida.
- Sincronizar historial salarial real desde corridas PAGADAS/CERRADAS.
- Usar historial salarial como fuente preferente para prestaciones.
- Congelar tasa BCV usada para bonos USD en eventos de prestaciones.
- Detectar y limpiar snapshots huérfanos.
- Detectar/reparar textos UTF/mojibake básicos en personas, cargos y snapshots.
- Mostrar diagnósticos en nomina_prestaciones.php y nomina_prestaciones_auditoria.php.

Archivos PHP incluidos:
- nomina_prestaciones.php
- nomina_prestaciones_helpers.php
- nomina_prestaciones_master_helpers.php
- nomina_prestaciones_auditoria.php
- nomina_reporte_legal_trabajador.php
- nomina_tasas_interes_bcv.php

SQL incluidos:
- SQL_VALIDACION_V7_3_PRESTACIONES.sql       (solo consulta)
- SQL_LIMPIEZA_V7_3_SNAPSHOTS_UTF.sql        (tiene freno @CONFIRMAR_LIMPIEZA_V73='NO')

Orden de prueba recomendado:
1. Copiar los PHP en /crud/.
2. Entrar a nomina_prestaciones.php.
3. Verificar si aparecen trabajadores sin fecha de ingreso válida.
4. Corregir la ficha de esos trabajadores antes de generar base.
5. Presionar "Sincronizar historial salarial desde corridas cerradas".
6. Revisar nomina_prestaciones_auditoria.php.
7. Ejecutar SQL_VALIDACION_V7_3_PRESTACIONES.sql.
8. Usar SQL_LIMPIEZA_V7_3_SNAPSHOTS_UTF.sql primero en modo NO, luego en SI solo si los conteos son correctos.

Notas:
- No modifica corridas cerradas.
- No borra prestaciones registradas.
- No recalcula intereses existentes.
- La limpieza de snapshots solo elimina registros huérfanos asociados a corridas inexistentes.
