ecluse
Safe HaskellNone
LanguageGHC2021

Ecluse.Composition.Plan

Description

The composition root's memory-plan derivation, shared by the two entry points that must agree on it: the boot (runProxy) and the dry-run checker (runCheckConfig). check-config's contract is to resolve exactly as a boot would, so this owns the publishConfigured predicate and the settings projection in one place rather than as parallel plumbing across the two files, the memory-plan analogue of the structural guarantee validateComposition already gives the pure half of the composition.

Synopsis

Documentation

resolveMemoryPlanFor :: AppConfig -> EffectiveRuntimePlan -> MirrorRuntimePlan -> (MemoryPlan, [Text]) Source #

Resolve the memory plan and its boot lines from the application config, the effective runtime plan, and the resolved mirror runtime. The EffectiveRuntimePlan is the one input the two callers deliberately vary (the boot's applied plan versus the checker's predicted one); everything else is projected here.