Approaches presented herein enable automatically fulfilling an obligation under a smart contract. A block is added to a blockchain ledger in response to an event that triggers the obligation. The block includes data related to the event. Inferences related to the event are derived based on an analysis of event data and historical data incorporated in prior blocks in the blockchain ledger. Based on the inferences, a potential cause of the event is derived. Based on the potential cause, an interested stakeholder to the fulfilling of the obligation is identified. The interested stakeholder is added to a group that is allowed access to the blockchain ledger corresponding to the smart contract.