github / github/vscode-github-actions

Request textDocument/hover fails when top-level env key is incomplete

Đang mở
#477 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
TypeScript
Star
660
Fork
213
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

Type: Bug

Making a workflow file like this:

```yaml
name: Sample 1
on:
- push
env:
jobs:
test:
runs-on: ubuntu-latest
steps:
- run: echo "Hello, ${{ env.TEST }}"
```

Causes the following error when hovering over the `- run:` line:

```
[Error - 4:08:42 PM] Request textDocument/hover failed.
Message: Request textDocument/hover failed with message: Unexpected type 'NullToken' encountered while reading 'workflow env'. The type 'MappingToken' was expected.
Code: -32603
```

In contrast, **none** of these workflows cause the error:

```yaml
name: Sample 1
on:
- push
jobs:
test:
runs-on: ubuntu-latest
env:
steps:
- run: echo "Hello, ${{ env.TEST }}"
```

```yaml
name: Sample 1
on:
- push
jobs:
test:
runs-on: ubuntu-latest
steps:
- run: echo "Hello, ${{ env.TEST }}"
env:
```

Extension version: 0.27.1
VS Code version: Code 1.100.2 (848b80aeb52026648a8ff9f7c45a9b0a80641e2e, 2025-05-14T21:47:40.416Z)
OS version: Darwin arm64 24.4.0
Modes:

System Info

|Item|Value|
|---|---|
|CPUs|Apple M4 Max (14 x 2400)|
|GPU Status|2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off|
|Load (avg)|3, 4, 4|
|Memory (System)|36.00GB (2.98GB free)|
|Process Argv|--crash-reporter-id 1eb59a8f-a777-446b-b97e-fe7c3d092446|
|Screen Reader|no|
|VM|0%|

A/B Experiments

```
vsliv368cf:30146710
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythonvspyt551cf:31249601
vscod805cf:30301675
binariesv615:30325510
c4g48928:30535728
azure-dev_surveyone:30548225
a9j8j154:30646983
962ge761:30959799
h48ei257:31000450
pythontbext0:30879054
cppperfnew:31000557
dwnewjupyter:31046869
pythonrstrctxt:31112756
nativeloc2:31192216
5fd0e150:31155592
dwcopilot:31170013
6074i472:31201624
dwoutputs:31242946
customenabled:31248079
hdaa2157:31222309
copilot_t_ci:31222730
e5gg6876:31282496
pythoneinst12:31285622
bgtreat:31268568
4gafe986:31271826
c7cif404:31309971
pythonpulldiagcf:31298646
996jf627:31283433
pythonrdcb7:31303018
usemplatestapi:31297334
0aa6g176:31307128
7bj51361:31289155
747dc170:31275177
pylancecolorcf:31309109
aj953862:31281341
generatesymbolt:31295002
convertfstringf:31295003
gendocf:31295004

```

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Start by reproducing the textDocument/hover request in VS Code with the workflow examples, focusing on the top-level env case and its NullToken error. Trace the hover handling in the extension; done means hovering over the run step no longer fails for an incomplete top-level env key, while the other examples continue to work.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
github-actions, typescript, vscode, yaml
Lĩnh vực
devtools, tooling
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
45/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.