//! Port for routing site outputs through the domain rather than the
//! CLI helpers. `publish` is the unit of work — implementations
//! either land every entry of the bundle or leave the previous
//! output untouched. Adapters choose their own atomicity primitive
//! (filesystem staging + rename, S3 alias swap, transactional CMS).
use crateSiteBundle;