Validate checks that the given links do not exceed the configured count and
per-link size limits, and that each link's variant has its required fields
populated.
nolint:revive // cognitive-complexity is high but justified to keep each case together for readability.