//! SDP4 deep-space orbit propagator (stub).
//!
//! Full SDP4 implementation (luni-solar perturbations, resonance terms,
//! Runge-Kutta deep-space integration) is deferred.  Currently delegates
//! to SGP4 as a placeholder so the rest of the pipeline can be exercised
//! end-to-end.
//!
//! TODO: implement deep-space secular and periodic perturbations per
//! Vallado (2006) sections on luni-solar effects and resonance.

use crate::error::Error;
use crate::propagation::sgp4::{EciOutput, SgpInit};
use crate::tle::newtypes::MinutesSinceEpoch;

/// Propagate a deep-space satellite to `tsince` minutes after epoch.
///
/// # Errors
///
/// Returns an error if the underlying propagation fails.
///
/// # Note
///
/// This is a placeholder that delegates to the SGP4 near-earth propagator.
/// Deep-space perturbations are not yet applied.
pub fn propagate(init: &SgpInit, tsince: MinutesSinceEpoch) -> Result<EciOutput, Error> {
    // TODO: apply luni-solar secular + periodic perturbations before
    // calling the near-earth core.
    crate::propagation::sgp4::propagate(init, tsince)
}
