# Build 20260811-72 — Web Push para Agentes

## Objetivo
Permitir que los usuarios de tipo Agente reciban notificaciones Web Push únicamente cuando un ticket sea asignado o reasignado a su propio usuario, manteniendo sin cambios las notificaciones de Supervisores por tickets creados en sus áreas.

## Cambios
- Se añadió detección explícita de rol `is_agent` sin ampliar acceso a Informes.
- Los Agentes pueden registrar/desregistrar suscripciones Web Push y ejecutar la prueba inicial de activación.
- Los Agentes no ven el panel técnico `Push OK`; solo el aviso de activación cuando sea necesario.
- Nueva cola `ticket_assigned` dirigida por `recipient_user_id` al agente exacto.
- Se añadió `recipient_user_id` a `web_push_queue`, con migración automática para instalaciones existentes.
- La asignación inicial (`addasigned.php`) y la reasignación (`addreasigned.php`) generan el evento Web Push después de guardar el cambio.
- Antes de enviar, el servidor vuelve a comprobar que el ticket continúe asignado al mismo agente. Si fue reasignado, la notificación antigua se invalida.
- Se mantiene la lógica existente `ticket_created` para Supervisores por área.
- Se añadió respaldo de avisos internos para Agentes cuando Push API no está disponible, consultando exclusivamente eventos dirigidos al usuario autenticado.
- Se actualizó el cache-busting del JS y Service Worker a build 20260811-72.

## Archivos principales
- admin/lib/SerintsaWebPushService.php
- admin/action/addasigned.php
- admin/action/addreasigned.php
- admin/ajax/agent_notifications_ajax.php
- admin/ajax/push_config_ajax.php
- admin/ajax/push_subscription_ajax.php
- admin/ajax/push_test_ajax.php
- admin/config/report_access.php
- admin/js/supervisor_browser_notifications.js
- admin/footer.php
- admin/sql/web_push_schema.sql
