remove duplicate sub runner callback invocation, add tests for invocation order