github / github/vscode-github-actions
Feature Request: Granular control over workflow validation diagnostics
- Lenguaje dominante
- TypeScript
- Estrellas
- 660
- Forks
- 213
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
## Problem
The extension currently provides no user-configurable settings to control which validation diagnostics are shown in the Problems panel. Users cannot suppress specific categories of warnings/errors without disabling the extension entirely or changing file associations to plain YAML (losing all GitHub Actions language features).
## Current Behavior
The extension surfaces diagnostics like:
- `Context access might be invalid: ` (severity: hint)
- Expression validation errors
- Schema validation warnings
These are generated for valid workflow patterns (e.g., outputs set via `$GITHUB_OUTPUT` and referenced in subsequent jobs) that the static analyzer cannot fully resolve.
## Example
```yaml
jobs:
build:
outputs:
version: ${{ steps.version.outputs.DF_VERSION }}
steps:
- id: version
run: echo "DF_VERSION=$(cat VERSION)" >> $GITHUB_OUTPUT
deploy:
needs: build
steps:
- run: echo "Deploying ${{ needs.build.outputs.DF_VERSION }}"
# ⚠️ "Context access might be invalid: DF_VERSION"
```
The warning is a false positive—the workflow is correct, but the extension cannot trace the dynamic output.
## Requested Feature
Add granular settings to control validation behavior, for example:
```json
{
"github-actions.validation.enabled": true,
"github-actions.validation.severity": {
"context-access": "ignore", // or "hint" | "warning" | "error"
"unknown-action": "warning",
"deprecated-command": "hint",
"schema": "error",
"expression": "warning"
}
}
```
Alternatively, a simpler approach:
```json
{
"github-actions.validation.suppressedRules": [
"context-access",
"deprecated-command"
]
}
```
## Benefits
- Users can tailor validation to their workflow patterns
- Reduces noise from false positives without losing useful diagnostics
- Aligns with patterns in other linting extensions (ESLint, Pylint, etc.)
## Workaround (Current)
The only workaround is to change file associations:
```json
"files.associations": {
".github/workflows/*.yml": "yaml"
}
```
This disables **all** GitHub Actions features, which is undesirable.
## Environment
- Extension version: 0.29.1
- VS Code version: 1.96.x
- OS: macOS
Guía de contribución
Línea de trabajo
Comienza revisando cómo la extensión produce actualmente diagnósticos de validación de context-access, expression, schema y de otras categorías, y compara después esas rutas con la configuración propuesta. El trabajo estará terminado cuando incluya un modelo de configuración acordado que permita a los usuarios habilitar la validación y controlar o suprimir categorías de diagnósticos sin deshabilitar las funcionalidades de lenguaje de GitHub Actions.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- github-actions, typescript
- Área
- developer-experience, tooling
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100