On teste en dur role=document alors que ce n'est pas forcément celui par défaut
À quelques endroits, on teste que le role=document, comme par exemple ici, signalé par @Pierretux https://git.spip.net/spip-contrib-extensions/roles_documents/src/branch/master/formulaires/editer_logo.php#L319
Sauf que l'API des rôles, on n'y met ce qu'on veut : https://git.spip.net/spip-contrib-extensions/roles_documents/src/branch/master/base/roles_documents.php#L48
- on peut parfaitement modifier la déclaration du cas général "*" pour mettre autre chose sur la clé "defaut"
- ensuite pour tel ou tel objet précis, on peut aussi déclarer totalement autre chose
Du coup il y a un problème de conception à priori : à aucun moment on n'est censé tester "document" en dur nulle part. Il faudrait à chaque fois prendre : soit le "defaut" de l'objet précis s'il existe dans la déclaration, soit le "defaut" du cas "*".