It appears that the game servers measure you total online time on each day (in PST time zone), and attendance event payouts are triggered when the online time for that day crosses the predefined thresholds, e.g. 1 hour or 3 hours. If these threshold for you are crossed before the event is enabled on certain day (which typically happens around 6:00 AM) then the attendance triggers will never fire for you on that day, and you would not receive the corresponding bonus items.
The known mitigations today:
1) Players can avoid being online within 12:00AM - 6:00AM PST window on the day the event starts.
2) GMs can choose to use "user being online at certain times" trigger instead "user being online for certain amount of time". Unfortunately this has it's own issues - cannot be used for expensive items, causes player burn out, etc.