Obteniendo claves duplicadas en YAML usando Python

Necesitamos analizar archivos YAML que contienen claves duplicadas y todos estos deben analizarse. No es suficiente saltear duplicados. Sé que esto va en contra de las especificaciones de YAML y me gustaría no tener que hacerlo, pero una herramienta de terceros utilizada por nosotros permite este uso y tenemos que lidiar con eso.

Ejemplo de archivo:

build:
  step: 'step1'

build:
  step: 'step2'

Después de analizar, deberíamos tener una estructura de datos similar a esta:

yaml.load('file.yml')
# [('build', [('step', 'step1')]), ('build', [('step', 'step2')])]

dict ya no se puede usar para representar los contenidos analizados.

Estoy buscando una solución en Python y no encontré una biblioteca que lo respalde, ¿me he perdido algo?

Alternativamente, estoy feliz de escribir lo mío, pero me gustaría hacerlo lo más simple posible.ruamel.yaml parece el analizador YAML más avanzado en Python y parece moderadamente extensible, ¿se puede extender para admitir campos duplicados?

Respuestas a la pregunta(3)

Su respuesta a la pregunta