# 2026-04-14 - agendamentos com filtro real por paciente e escopo por contrato

## O que mudou
- a API de `appointments_list` passou a aceitar `cliente_q` numerico como identificador de paciente, sem depender apenas de nome ou e-mail
- a tela `pages/admin/agendamentos.php` deixou de reenviar `cliente_q` quando ele so espelha o `patient_id` vindo pela URL
- a listagem de agendamentos passou a aplicar escopo por contrato no backend, considerando o contrato do profissional e tambem o vinculo em `usuario_contratos`
- a interface passou a normalizar melhor status legados como `realizado`, `agendado` e `ativo`

## Impacto
- a abertura de `/adm/agendamentos?patient_id=22171&cliente_q=22171` passa a retornar os agendamentos do paciente corretamente
- a agenda administrativa fica mais consistente para operacoes multiempresa baseadas em contrato
- a tela fica menos fragil para o modelo futuro em que o profissional pode atender em mais de um contrato

## Arquivos envolvidos
- `pages/admin/assets/js/agendamentos.js`
- `src/Modules/Finance/Booking/Http/BookingController.php`

## Validacao
- `php -l src/Modules/Finance/Booking/Http/BookingController.php`
- `node --check pages/admin/assets/js/agendamentos.js`
