Feature Request: Granular control over workflow validation diagnostics
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 35/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- github-actions, typescript
调研方向
首先检查扩展目前如何生成 context-access、expression、schema 和其他验证诊断,然后将这些路径与提议的设置进行比较。完成标准应包括一个经过一致同意的配置模型,使用户能够启用验证,并控制或抑制诊断类别,同时不禁用 GitHub Actions 的语言功能。
由索引模型根据 Issue 内容生成。
描述
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: <VAR_NAME>(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
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:
{
"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:
{
"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:
"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
- 主要语言
- TypeScript
- 星标
- 661
- 派生
- 214
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
github/vscode-github-actions 的其他 Issue
-
enhancement
难度 2/5 1-3 小时 新手友好度 76/100
github/vscode-github-actions#627 · 1 个 reaction ·
-
难度 5/5 一周以上 新手友好度 20/100
github/vscode-github-actions#630 ·
-
long work 未关闭
难度 4/5 3-5 天 新手友好度 25/100
github/vscode-github-actions#628 ·
-
bug
难度 3/5 1-2 天 新手友好度 55/100
github/vscode-github-actions#625 ·
-
bug
难度 3/5 1-2 天 新手友好度 64/100
github/vscode-github-actions#621 · 3 条评论 ·
查看 github/vscode-github-actions 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 65/100
-
难度 2/5 1-3 小时 新手友好度 75/100
-
bug v2
难度 2/5 1-3 小时 新手友好度 75/100
modelcontextprotocol/inspector#2458 · 1 条评论 ·
-
难度 1/5 1 小时以内 新手友好度 75/100
railmapgen/rmp-gallery#4068 ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
难度 2/5 1-3 小时 新手友好度 70/100
carbon-design-system/ibm-products#9907 ·