Question
Make api::Launch constructible from core alone, as decided in "Make api::Launch self-sufficient and type ColdRefused": move the real ColdMachinery impl (dl's ColdPath — the config → metadata → migration → clone-manager plumbing of dl/src/session.rs:151-171, minus the printing) and the real Provision impl (dl's ToolProvisioning, dl/src/launch.rs:118-176, minus render::Saying) into devlaunch-core with the event sinks injectable as typed values; dl keeps only rendering. Then complete api's re-exports so every Launch::new parameter type is reachable from api alone (Refresh, Host, Notices<LaunchNotice>, the impls) — today 5 of 7 live outside it. Red-first at the seam: a test constructing a cold-capable Launch using only devlaunch_core::api paths.
Question
Make
api::Launchconstructible from core alone, as decided in "Make api::Launch self-sufficient and type ColdRefused": move the realColdMachineryimpl (dl'sColdPath— the config → metadata → migration → clone-manager plumbing ofdl/src/session.rs:151-171, minus the printing) and the realProvisionimpl (dl'sToolProvisioning,dl/src/launch.rs:118-176, minusrender::Saying) intodevlaunch-corewith the event sinks injectable as typed values; dl keeps only rendering. Then completeapi's re-exports so everyLaunch::newparameter type is reachable fromapialone (Refresh,Host,Notices<LaunchNotice>, the impls) — today 5 of 7 live outside it. Red-first at the seam: a test constructing a cold-capableLaunchusing onlydevlaunch_core::apipaths.