private static @NotNull List<EventPair<?>> buildContext(@NotNull Project project,
                                                          @NotNull ConfigurationFactory factory,
                                                          @NotNull Executor executor,
                                                          @Nullable RunConfiguration runConfiguration,
                                                          boolean isRerun,
                                                          boolean isRunningCurrentFile,
                                                          boolean isDumb,
                                                          boolean isServiceView) {
    List<EventPair<?>> eventPairs = createFeatureUsageData(factory.getType(), factory);
    ExecutorGroup<?> group = ExecutorGroup.getGroupIfProxy(executor);
    eventPairs.add(EXECUTOR.with(group != null ? group.getId() : executor.getId()));
    eventPairs.add(IS_RERUN.with(isRerun));
    eventPairs.add(IS_RUNNING_CURRENT_FILE.with(isRunningCurrentFile));
    eventPairs.add(IS_DUMB_MODE.with(isDumb));
    eventPairs.add(IS_SERVICE_VIEW.with(isServiceView));

    if (runConfiguration instanceof FusAwareRunConfiguration) {
      List<EventPair<?>> additionalData = ((FusAwareRunConfiguration)runConfiguration).getAdditionalUsageData();
      ObjectEventData objectEventData = new ObjectEventData(additionalData);
      eventPairs.add(ADDITIONAL_FIELD.with(objectEventData));
    }
    String targetTypeId = getTargetTypeId(project, runConfiguration);
    if (targetTypeId != null) {
      eventPairs.add(TARGET.with(targetTypeId));
    }
    if (runConfiguration instanceof EnvFilesOptions envFilesOptions) {
      eventPairs.add(ENV_FILES_COUNT.with(envFilesOptions.getEnvFilePaths().size()));
    }
    return eventPairs;
  }
private static @NotNull List<EventPair<?>> buildContext(@NotNull Project project,
                                                          @NotNull ConfigurationFactory factory,
                                                          @NotNull Executor executor,
                                                          @Nullable RunConfiguration runConfiguration,
                                                          boolean isRerun,
                                                          boolean isRunningCurrentFile,
                                                          boolean isDumb,
                                                          boolean isServiceView)