GitHub a lancé un bot pour la modération automatique des problèmes

Dans le cadre du projet Issuer, un bot a été préparé pour GitHub qui résout automatiquement les tâches de modération le système de suivi sur GitHub. Sur GitHub, vous pouvez trouver des référentiels dont la seule fonction est de coordonner les personnes via le système Issue.

Dans certains d'entre eux, lorsque vous quittez le problème, vous êtes invité à remplir un formulaire, ensuite j'ai vuavoir un modérateur, vérifier l'exactitude du remplissage du formulaire et publier les balises selon celles spécifiées dans le formulaire (les balises ne peuvent être accrochées par un utilisateur privilégié que si elles ne sont pas spécifiées dans le modèle). Un exemple d'une telle communauté est la communauté Open Source Ideas.

Le modérateur ne vient pas instantanément. Donc, Une action GitHub présentée dans l'actualité a été préparée pour valider les formulaires et effectuer des opérations.

Le bot est écrit en Python, pero aún debe ser ejecutado a través de node.js, ya que GitHub solo tiene 2 tipos de acciones: node.js y docker y para docker, primero se carga el mismo contenedor que node.js y se carga en el otro contenedor que est long.

Étant donné que python3 et tout ce dont vous avez besoin se trouvent dans le conteneur avec node.js, il est rationnel de simplement y charger les dépendances car elles sont petites.

Il s'agit d'une action GitHub avec 3 fonctions connectées pour la gestion des problèmes.

Vérifiez si les problèmes entrants correspondent de quelque manière que ce soit au modèle:

Que les sections ne contiennent pas de lignes du modèle par défaut (généralement présentes lorsqu'un utilisateur n'a pas pris la peine de compléter la section).

Que les sections contenant des cases à cocher à définir comme étiquettes contiennent uniquement les cases à cocher présentes dans le modèle d'origine

Que chaque section comporte un certain nombre de cases marquées dans la plage [min, max]

Définissez les étiquettes en fonction des cases cochées.

Ferme automatiquement les problèmes si l'auteur n'a pas résolu les problèmes mis en évidence par le linter dans un certain laps de temps.

Utiliser une personne dédiée pour attribuer des étiquettes est un fardeau, car il est préférable de permettre aux utilisateurs de faire du «libre-service». Les utilisateurs peuvent attribuer des étiquettes aux problèmes d'un sous-ensemble restreint qui peuvent être effectués via une extension Markdown et des cases à cocher.

Avec lui lorsqu'un utilisateur coche les cases ou boutons radio le bot définit les étiquettes en conséquence.

Des caractéristiques qui ressortent de ce bot qui a été préparé, sont les suivants:

  • L'action est contrôlée par les paramètres YAML et les modèles Markdown;
  • Un bloc est ajouté à chaque modèle Markdown qui décrit les conditions de remplissage correct du formulaire et les actions souhaitées;
  • Un fichier de configuration avec les paramètres globaux est ajouté;
  • Les formulaires sont constitués de sections.
  • Il existe 2 types de sections:
    Texte libre: L'action peut vérifier que l'utilisateur a pris la peine de terminer quelque chose. La signification du texte n'est pas automatiquement vérifiée.
    Dans les cases à cocher n nombre d'indicateurs peuvent être demandés et / ou complétés, de sorte que 0 {= m1 {= n {= m2 {= nombre total d'indicateurs dans la section.
  • L'action vérifie que les cases correspondent aux cases du modèle. Si les indicateurs sont correctement définis, l'action peut se bloquer sur les balises de problème, resp. Cases à cocher.
  • Si le formulaire n'est pas rempli correctement, l'action indique à l'utilisateur comment le remplir correctement et ajoute une balise spéciale.
  • Si le formulaire n'est pas corrigé dans un délai spécifié, l'action peut fermer le problème. L'interdiction automatique des utilisateurs, la suppression et le déplacement du problème n'ont pas encore été mis en œuvre en raison de l'absence d'API officielle pour les actions nécessaires et les problèmes liés à l'état de stockage.
  • Si le problème est résolu, l'action supprime la marque.
  • Les modèles de réponse aux actions sont bien entendu personnalisables.

Enfin si vous souhaitez en savoir plus, vous pouvez vérifier les détails en accédant à lien suivant


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.