fix(semantic-layer): run session lifecycle off the event loop (#794)