//! Phase 29ai P7: Single Planner (Facts → DomainPlan)
//!
//! P0 goal: expose a single external-ish entrypoint (`build_plan`) and hide
//! pattern-name branching behind internal enums.

#![allow(dead_code, unused_imports)]

pub(in crate::mir::builder) mod build;
pub(in crate::mir::builder) mod candidates;
pub(in crate::mir::builder) mod context;
pub(in crate::mir::builder) mod freeze;
pub(in crate::mir::builder) mod outcome;

pub(in crate::mir::builder) use build::{build_plan, build_plan_from_facts_ctx};
pub(in crate::mir::builder) use context::PlannerContext;
pub(in crate::mir::builder) use freeze::Freeze;
pub(in crate::mir::builder) use outcome::{
    build_plan_with_facts, build_plan_with_facts_ctx, PlanBuildOutcome,
};
