better action validation