Package-level declarations
Types
Synchronous batch driver: runs each entry of a FitSpec.Batch through FittingRunner, collecting successful results and capturing per-dataset failures so the batch completes even when some entries fail.
Converts the live, non-serializable products of a continuous fit (PDFModeler + PDFModelingResults) into the serializable FitResultData graph. This is the orchestration layer's core translation step: it is the one place that reads the engine's live objects and emits wire-safe DTOs, identical whether the engine is co-located or remote.
Synchronous driver that turns one fit configuration into a serializable FitResultData by orchestrating the appropriate engine: PDFModeler for the continuous path and PMFModeler for the discrete path. It owns import and the estimate/score/evaluate sequence, and hands the live results to FitResultExtractor for translation into the DTO. The live engine objects are used only transiently and are never exposed — presentation is driven entirely from the returned DTO (plus the caller's own raw data for plots).