"maintain" cannot be used to verify actor permissions
- Lenguaje dominante
- JavaScript
- Estrellas
- 167
- Forks
- 17
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
### Describe the Issue
The "maintain" permission cannot be used to to verify the actor permissions. As a user with the "maintain" permission I would expect the following configuration to work. However, a comment is created that I only have the "write" permission.
Reading the GH API docs, it clearly states the "permission" field uses legacy base roles and that "maintain" is mapped to "write" [(ref)](https://docs.github.com/en/rest/collaborators/collaborators?apiVersion=2026-03-10#get-repository-permissions-for-a-user). So the output is expected but it is not clearly stated in this Action's documentation. Furthermore, using this legacy permission field of the API prevents us from differentiating between users with the write and users with the maintain role. In our case, we only want maintainers to be able to use the defined command and not developers with the "write" role.
### Action Configuration
```yaml
steps:
- uses: github/command@v2
id: command
with:
command: "/tf-apply"
permissions: maintain,admin
allowed_contexts: pull_request
reaction: "rocket"
skip_ci: true
```
### Relevant Actions Log Output
```
👋 , seems as if you have not maintain/admin permissions in this repo, permissions: write
```
### Extra Information
_No response_
Guía de contribución
Línea de trabajo
Comienza con la configuración proporcionada de github/command@v2 y la comprobación de permisos que produce la salida de registro mostrada. Compara el campo de permisos de la GitHub API con los roles maintain y write, y verifica después el comportamiento usando la configuración de workflow proporcionada. Se considera terminado cuando los usuarios con el rol maintain pueden distinguirse de los usuarios con el rol write, o cuando la limitación queda documentada claramente si la API no puede admitir esa distinción.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- github-actions, javascript
- Área
- ci-cd
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 48/100