Non-blocking promise protocol and implementation