fallow-engine 3.1.0

Typed analysis engine facade for fallow consumers
Documentation
//! Project-level analysis contracts owned by the engine boundary.

use std::path::PathBuf;

use rustc_hash::FxHashSet;

pub use crate::public_api::{public_api_package_entry_points, public_export_keys_for_graph};
pub use crate::results::{ProjectAnalysisArtifacts, ProjectAnalysisOutput};

/// Artifact retention options for one project-level analysis run.
#[derive(Debug, Default)]
pub struct ProjectAnalysisArtifactOptions {
    /// Keep parser artifacts needed by inline complexity and health overlays.
    pub retain_complexity_artifacts: bool,
    /// Keep the module graph for trace, routing, and decision-surface facts.
    pub retain_graph: bool,
    /// Changed files already resolved by the caller for this command run.
    pub changed_files: Option<FxHashSet<PathBuf>>,
    /// Collect source metadata fingerprints for follow-up cache decisions.
    pub collect_source_fingerprints: bool,
}