You're right, it isn't created every time.

I think of PromiseBridge.addResultCallback as a utility function, that should through if returnedResult is null.  In other words, the responsibility for dealing with the null should be in the code that pulls it out of the map.  I would be surprised if a utility function silently ignored nulls.

But I'm happy to let mgodave cast the deciding vote if need be!