For some reason, the table in Agent Directory page can't be sorted or filtered. I tried console logging the $agent data and looks like it didn't update the value (there should where .... )
agents after: SELECT A1.staff_id, A1.dept_id, A1.role_id, A1.username, A1.firstname, A1.lastname, A1.passwd, A1.backend, A1.email, A1.phone, A1.phone_ext, A1.mobile, A1.signature, A1.lang, A1.timezone, A1.locale, A1.notes, A1.isactive, A1.isadmin, A1.isvisible, A1.onvacation, A1.assigned_only, A1.show_assigned_tickets, A1.change_passwd, A1.max_page_size, A1.auto_refresh_rate, A1.default_signature_type, A1.default_paper_size, A1.extra, A1.permissions, A1.created, A1.lastlogin, A1.passwdreset, A1.updated, A2.id, A2.pid, A2.tpl_id, A2.sla_id, A2.schedule_id, A2.email_id, A2.autoresp_email_id, A2.manager_id, A2.flags, A2.name, A2.signature, A2.ispublic, A2.group_membership, A2.ticket_auto_response, A2.message_auto_response, A2.path, A2.updated, A2.created, A3.staff_id, A3.dept_id, A3.role_id, A3.flags FROM ost_staff A1 JOIN ost_department A2 ON (A1.dept_id = A2.id) LEFT JOIN ost_staff_dept_access A3 ON (A1.staff_id = A3.staff_id) GROUP BY A1.staff_id ORDER BY A1.firstname ASC, A1.lastname ASC
in comparison, the table on user directory works just fine.