When a BuildStatusSetEvent is raised, apps which attempt to access properties on the BuildStatus it contains can receive unexpected null values from methods which are explicitly documented as not being able to return them. (BuildState seems to be the most common.)
This issue was originally raised as Eernie/bitbucket-webhooks-plugin#88. However, nothing in how that app is using the BuildStatusSetEvent should trigger these null values. Instead, the issue appears to be related to the fact that the BuildStatus instance on the event is an ActiveObjects proxy, rather than a simple POJO.