Fix edge case in generate_metadata