Manifest to enrich.
Behaviour options.
Optional Readonlyoverwrite?: booleanWhen true, replaces (or strips) any
existing horizonProfile. Default false.
A new manifest with horizonProfile set or removed, or the
original manifest reference when no change applies.
Return a copy of the manifest with
horizonProfilepopulated from the article-horizons registry.Behaviour matrix:
horizonProfileis set from buildHorizonProfile.overwriteistrue→ any existinghorizonProfileis stripped so the "absent for unknown slugs" invariant holds even when the registry evolves (e.g. a slug is removed) or a manifest carries a stale value from a previous registry version.overwriteisfalse→ no-op.horizonProfileis present ANDoverwriteisfalse→ no-op (forward-compat: respect a manifest-supplied value).The function is pure — the input manifest is never mutated.