Feature: warn when workflow YAML validates but would fail at runtime (schema vs runner gap)
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- github-actions, typescript
Hướng nghiên cứu
Bắt đầu bằng cách lần theo điểm vào hiện có của việc xác thực schema YAML của workflow và phiên đã xác thực vốn được sử dụng cho cây API. Xem xét cách các tệp action.yml và các trigger của workflow được phân giải, sau đó xác định bốn kiểm tra runtime opt-in và bộ nhớ đệm workflow-file-hash phù hợp bên cạnh việc xác thực như thế nào. Hoàn thành có nghĩa là các chẩn đoán Information có thể bỏ qua được chạy khi mở và lưu mà không chặn thao tác lưu.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
Extension validates workflow YAML against the schema, but many mistakes only surface after git push triggers a runner:
runs-on:referencing a self-hosted label that has no online runneruses: owner/repo@refwhererefno longer resolves (deleted tag/branch, moved SHA)secrets: inheriton a reusable workflow whose caller does not actually inheritpermissions:narrower than what a step needs (e.g.contents: read+ a step that pushes)if:expression referencing a context that is empty for the trigger (e.g.github.event.pull_request.*onpush)
Each case validates green locally, then burns a runner minute and a red X on the PR.
Proposal
A "runtime-plausibility" pass, opt-in (github-actions.runtimeChecks.enabled), that runs alongside schema validation and surfaces Information-level diagnostics for:
- Unresolvable
uses:refs (HEAD probe via the authenticated session already used for the API tree) runs-on:labels not present in the repo's runner listpermissions:narrower than the union of permissions declared by any resolvable action'saction.yml- Context references that are empty for the declared
on:triggers
None block save; all are dismissible. Runs on open + on save, cached by workflow-file hash.
Why not act / nektos
act runs the whole workflow in Docker; this is a static, seconds-scale lint. Complementary, not overlapping.
Related
- #593 (commit-pinned actions reported unresolved) - same "static analysis of
uses:" surface - #609 (false-positive missing-required-inputs) - related schema-vs-runtime gap in the other direction
- Ngôn ngữ chính
- TypeScript
- Star
- 661
- Fork
- 214
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của github/vscode-github-actions
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
github/vscode-github-actions#627 · 1 reaction ·
-
long work Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
github/vscode-github-actions#628 ·
-
bug
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 55/100
github/vscode-github-actions#625 ·
-
bug
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 64/100
github/vscode-github-actions#621 · 3 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 50/100
github/vscode-github-actions#619 ·
Tất cả issue của github/vscode-github-actions
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
bug v2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
modelcontextprotocol/inspector#2458 · 1 bình luận ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 75/100
railmapgen/rmp-gallery#4068 ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
carbon-design-system/ibm-products#9907 ·