docs: protected RunnerResult doRun(Class<? extends LaJob> jobType, LaJobRuntime runtime) {
          // similar to async manager's process
          arrangeThreadCacheContext(runtime);
          arrangePreparedAccessContext(runtime);
          arrangeCallbackContext(runtime);
          final Object variousPreparedObj = prepareVariousContext(runtime);
          final long before = showRunning(runtime);
          Throwable cause = null;
          try {
              debugFw(runtime, "...Calling try clause of job runner");
              hookBefore(runtime);
              debugFw(runtime, "...Calling actuallyRun() of job runner");
              actuallyRun(jobType, runtime);
          } catch (Throwable e) {
              debugFw(runtime, "...Calling catch clause of job runner: {}", e.getClass().getSimpleName());
              final Throwable filtered = filterCause(e);
              cause = filtered;
              showJobException(runtime, before, filtered);
          } finally {
              debugFw(runtime, "...Calling finally clause of job runner");
              hookFinally(runtime, OptionalThing.ofNullable(cause, () -> {
                  throw new IllegalStateException("Not found the cause: " + runtime);
              }));
              showFinishing(runtime, before, cause); // should be before clearing because of using them
              clearVariousContext(runtime, variousPreparedObj);
              clearPreparedAccessContext();
              clearCallbackContext();
              clearThreadCacheContext();
          }
          debugFw(runtime, "...Calling createRunnerResult() of job runner");
          return createRunnerResult(runtime, cause);
      }