fix dictionary unpacking
revise worker helper and add more logging events
use share virtual environment