"""
Geometry search runner.

Runs geometry tests across the search space using cached activations.

This module re-exports all public classes from the _runner_parts subpackage
after splitting the original 1248-line file into parts of 300 lines or fewer.
"""
from __future__ import annotations

# Re-export geometry module functions that were previously imported here
# (other modules import them via geometry_runner for backward compatibility)
from wisent.core.reading.modules import (
    compute_signal_strength,
    compute_linear_probe_accuracy,
    compute_mlp_probe_accuracy,
    compute_knn_accuracy,
    compute_knn_pca_accuracy,
    compute_knn_umap_accuracy,
    compute_knn_pacmap_accuracy,
    compute_mmd_rbf,
    compute_density_ratio,
    compute_fisher_per_dimension,
    estimate_local_intrinsic_dim,
    compute_local_intrinsic_dims,
    compute_diff_intrinsic_dim,
    compute_direction_from_pairs,
    compute_direction_stability,
    compute_multi_direction_accuracy,
    compute_pairwise_diff_consistency,
    compute_steerability_metrics,
    compute_linearity_score,
    compute_recommendation,
    compute_adaptive_recommendation,
    compute_robust_recommendation,
    compute_final_steering_prescription,
    generate_nonsense_activations,
    compute_nonsense_baseline,
    analyze_with_nonsense_baseline,
    detect_multiple_concepts,
    split_by_concepts,
    analyze_concept_independence,
    compute_concept_coherence,
    compute_concept_stability,
    decompose_into_concepts,
    find_mixed_pairs,
    get_pure_concept_pairs,
    recommend_per_concept_steering,
    compute_signal_to_noise,
    compute_null_distribution,
    compare_to_null,
    validate_concept,
    compute_bootstrap_signal_estimate,
    compute_saturation_check,
    find_optimal_pair_count,
    compute_icd,
    run_full_zwiad,
    run_full_zwiad_with_layer_search,
    run_full_zwiad_with_steering_eval,
    evaluate_steering_effectiveness,
    evaluate_activation_regions,
    compute_geometry_metrics,
    analyze_transformer_components,
    get_component_hook_points,
    compare_components_for_benchmark,
    compare_concept_granularity,
)

# Re-export classes from split part files
from wisent.core.reading.modules.runner._runner_parts._test_result import (
    GeometryTestResult,
)
from wisent.core.reading.modules.runner._runner_parts._search_results import (
    GeometrySearchResults,
    SteeringEvaluationResult,
)
from wisent.core.reading.modules.runner._runner_parts._types import (
    ZwiadResult,
    ZwiadLayerResult,
    ComponentAnalysisResult,
    MultiConceptAnalysis,
    ConceptValidityResult,
    ConceptDecomposition,
)
from wisent.core.reading.modules.runner._runner_parts import (
    TransformerComponent,
    ComponentActivationExtractor,
)
from wisent.core.reading.modules.runner._runner_parts._runner_class import (
    GeometryRunner,
)

__all__ = [
    "GeometryTestResult",
    "GeometrySearchResults",
    "GeometryRunner",
    "ZwiadResult",
    "ZwiadLayerResult",
    "SteeringEvaluationResult",
    "ComponentAnalysisResult",
    "ComponentActivationExtractor",
    "TransformerComponent",
    "MultiConceptAnalysis",
    "ConceptValidityResult",
    "ConceptDecomposition",
    # Re-exported geometry functions
    "compute_signal_strength",
    "compute_linear_probe_accuracy",
    "compute_mlp_probe_accuracy",
    "compute_knn_accuracy",
    "compute_knn_pca_accuracy",
    "compute_knn_umap_accuracy",
    "compute_knn_pacmap_accuracy",
    "compute_mmd_rbf",
    "compute_density_ratio",
    "compute_fisher_per_dimension",
    "estimate_local_intrinsic_dim",
    "compute_local_intrinsic_dims",
    "compute_diff_intrinsic_dim",
    "compute_direction_from_pairs",
    "compute_direction_stability",
    "compute_multi_direction_accuracy",
    "compute_pairwise_diff_consistency",
    "compute_steerability_metrics",
    "compute_linearity_score",
    "compute_recommendation",
    "compute_adaptive_recommendation",
    "compute_robust_recommendation",
    "compute_final_steering_prescription",
    "generate_nonsense_activations",
    "compute_nonsense_baseline",
    "analyze_with_nonsense_baseline",
    "detect_multiple_concepts",
    "split_by_concepts",
    "analyze_concept_independence",
    "compute_concept_coherence",
    "compute_concept_stability",
    "decompose_into_concepts",
    "find_mixed_pairs",
    "get_pure_concept_pairs",
    "recommend_per_concept_steering",
    "compute_signal_to_noise",
    "compute_null_distribution",
    "compare_to_null",
    "validate_concept",
    "compute_bootstrap_signal_estimate",
    "compute_saturation_check",
    "find_optimal_pair_count",
    "compute_icd",
    "run_full_zwiad",
    "run_full_zwiad_with_layer_search",
    "run_full_zwiad_with_steering_eval",
    "evaluate_steering_effectiveness",
    "evaluate_activation_regions",
    "compute_geometry_metrics",
    "analyze_transformer_components",
    "get_component_hook_points",
    "compare_components_for_benchmark",
    "compare_concept_granularity",
]
