Grupos de interés especial de Bazel

Bazel aloja grupos de interés especial (SIGs) para enfocar la colaboración en áreas específicas y respaldar la comunicación y la coordinación entre los propietarios, los mantenedores y los colaboradores de Bazel. Esta política se aplica a bazelbuild.

Los SIGs realizan su trabajo en público. El alcance ideal para un SIG abarca un dominio bien definido, en el que la mayoría de la participación proviene de la comunidad. Los SIGs pueden enfocarse en repositorios mantenidos por la comunidad en bazelbuild (como las reglas de lenguaje) o en áreas de código en el repositorio de Bazel (como la ejecución remota).

Si bien no todos los SIGs tendrán el mismo nivel de energía, amplitud de alcance o modelos de gobernanza, debe haber evidencia suficiente de que hay miembros de la comunidad dispuestos a participar y contribuir si se establece el grupo de interés. Antes de unirte, revisa el trabajo del grupo y, luego, comunícate con el líder del SIG. Las políticas de membresía varían según el SIG.

Consulta la lista completa de SIGs de Bazel.

Objetivos no alcanzados: Qué no es un SIG

Los SIGs están diseñados para facilitar la colaboración en el trabajo compartido. Por lo tanto, un SIG es lo siguiente:

  • No es un foro de asistencia: Una lista de distribución y un SIG no son lo mismo.
  • No es necesario de inmediato: Al principio de la vida de un proyecto, es posible que no sepas si tienes trabajo compartido o colaboradores.
  • No es trabajo gratuito: Se requiere energía para hacer crecer y coordinar el trabajo de forma colaborativa.

Los propietarios de Bazel adoptan un enfoque conservador para la creación de SIGs. Gracias a la facilidad para iniciar proyectos en GitHub, hay muchas formas en las que se puede colaborar sin necesidad de un SIG.

Ciclo de vida del SIG

En esta sección, se explica cómo crear un SIG.

Investigación y consulta

Para proponer un nuevo grupo de SIG, primero recopila evidencia para su aprobación, como se especifica a continuación. Algunas formas posibles que puedes considerar son las siguientes:

  • Un problema o conjunto de problemas bien definidos que el grupo resolvería
  • Consultas con miembros de la comunidad que se beneficiarían, evaluando tanto el beneficio como su disposición a comprometerse
  • Para los proyectos existentes, evidencia de problemas y solicitudes de extracción que les interesan a los colaboradores sobre el tema
  • Posibles objetivos que el grupo puede alcanzar
  • Requisitos de recursos para ejecutar el grupo

Incluso si la necesidad de un SIG parece evidente, la investigación y la consulta siguen siendo importantes para el éxito del grupo.

Crea el grupo nuevo

El nuevo grupo debe seguir el siguiente proceso para la constitución. En particular, debe demostrar lo siguiente:

  • Un propósito y un beneficio claros para Bazel (ya sea en torno a un subproyecto o un área de aplicación)
  • Dos o más colaboradores dispuestos a actuar como líderes de grupo, la existencia de otros colaboradores y evidencia de la demanda del grupo
  • Cada grupo debe usar al menos una lista de distribución de acceso público. Un SIG puede volver a usar una de las listas públicas, como bazel-discuss, solicitar una lista para @bazel.build o crear su propia lista.
  • Recursos que el SIG requiere inicialmente (por lo general, lista de distribución y videollamada periódica)
  • Los SIGs pueden publicar documentos y archivos desde su directorio en bazelbuild/community o desde su propio repositorio en la bazelbuild organización de GitHub. Los SIGs pueden vincularse a recursos externos si eligen organizar su trabajo fuera de la organización de GitHub bazelbuild.
  • Los propietarios de Bazel aprueban o rechazan las solicitudes de SIG y consultan a otras partes interesadas según sea necesario.

Antes de ingresar a las partes formales del proceso, debes consultar con el equipo de productos de Bazel en product@bazel.build. La mayoría de los SIGs requieren conversación e iteración antes de la aprobación.

La solicitud formal para el nuevo grupo se realiza mediante el envío de una constitución como una solicitud de extracción a bazelbuild/community, y la inclusión de la solicitud en los comentarios de la solicitud de extracción siguiendo la plantilla que se muestra a continuación. Tras la aprobación, se combina la solicitud de extracción para el grupo y se crean los recursos necesarios.

Plantilla de solicitud para un nuevo SIG

Para solicitar un nuevo SIG, usa la plantilla en el repositorio de la comunidad: SIG-request-template.md.

Constitución

Para establecer un grupo, necesitas una constitución y debes seguir el código de conducta de Bazel . Los archivos del grupo serán públicos. La membresía puede estar abierta a todos sin aprobación o estar disponible a pedido, a la espera de la aprobación del administrador del grupo.

La constitución debe nominar a un administrador. Además de un administrador, el grupo debe incluir al menos una persona como líder (pueden ser la misma persona), que sirva como punto de contacto para la coordinación según sea necesario con el equipo de productos de Bazel.

Los creadores del grupo deben publicar su constitución en la lista de distribución del grupo. El repositorio de la comunidad en la organización de GitHub de Bazel archiva esos documentos y políticas. A medida que los grupos evolucionan sus prácticas y convenciones, deben actualizar sus constituciones dentro de la parte pertinente del repositorio de la comunidad.

Colaboración e inclusión

Si bien no es obligatorio, el grupo debe optar por usar la colaboración a través de llamadas de conferencia programadas o canales de chat para realizar reuniones. Cualquier reunión de este tipo debe anunciarse en la lista de distribución, y las notas deben publicarse en la lista de distribución después. Las reuniones periódicas ayudan a impulsar la responsabilidad y el progreso en un SIG.

Los miembros del equipo de productos de Bazel pueden supervisar de forma proactiva y alentar al grupo a la discusión y la acción según corresponda.

Cómo lanzar un SIG

Actividades obligatorias:

Actividades opcionales:

  • Crear una entrada de blog para el blog de Bazel

Estado y finalización de los SIGs

Los propietarios de Bazel hacen todo lo posible para garantizar el estado de los SIGs. Los propietarios de Bazel solicitan ocasionalmente al líder del SIG que informe sobre el trabajo del SIG para informar a la comunidad de Bazel más amplia sobre la actividad del grupo.

Si un SIG ya no tiene un propósito útil o una comunidad interesada, se puede archivar y dejar de funcionar. El equipo de productos de Bazel se reserva el derecho de archivar esos SIGs inactivos para mantener el estado general del proyecto, aunque es un resultado menos preferible. Un SIG también puede optar por disolverse si reconoce que llegó al final de su vida útil.

Nota

Este contenido se adoptó del manual de estrategias de SIG de Tensorflow con modificaciones.