Remote secrets are never fetched when the only trigger is `workflow_call`
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 82/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Quiet
- Tech stack
- typescript
- Domain
- devtools
Research direction
Start in languageserver/src/context-providers/secrets.ts around lines 32-39, where the early return occurs before getRemoteSecrets. Reproduce completion for a workflow_call-only workflow via Neovim or direct stdio JSON-RPC, then verify remote secrets are offered while explicitly passed secrets and GITHUB_TOKEN remain correct.
Written by the indexing model from the issue text.
Description
Describe the bug
In a workflow_call-only workflow, the secrets context never fetches remote secrets, so completion offers only GITHUB_TOKEN and explicitly passed in secrets. vars fetches normally in the same file.
When a caller uses secrets: inherit, secrets available to the caller are reachable and should be offered for completion.
To Reproduce
-
In an org-owned repo, open:
name: probe on: workflow_call: jobs: build: runs-on: ubuntu-latest steps: - run: echo env: A: ${{ secrets. }} B: ${{ vars. }} -
Complete after
secrets.: offers onlyGITHUB_TOKEN. Complete aftervars.: offers all org and repo variables. -
Add
push:alongsideworkflow_call:and the org and repo secrets appear.
When secrets are passed in explicitly, the completion is correct (GITHUB_TOKEN plus the secrets passed in), but without explicit secrets, a caller might use secrets: inherit.
Expected behavior
With secrets explicitly passed in, the current behaviour is fine. Without, remote secrets should be fetched and offered.
Package/Area
- Expressions
- Workflow Parser
- Language Service
- Language Server
Package Version
@actions/languageserver v0.3.60, also present in v0.3.61.
Additional context
languageserver/src/context-providers/secrets.ts returns before getRemoteSecrets:
Reproduced via Neovim gh_actions_ls and direct stdio JSON-RPC.
- Dominant language
- TypeScript
- Stars
- 193
- Forks
- 74
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from actions/languageservices
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
actions/languageservices#392 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
actions/languageservices#387 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
actions/languageservices#373 ·
-
enhancement
Difficulty 4/5 3-5 days Newbie friendliness 55/100
actions/languageservices#391 · 1 comment ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 52/100
actions/languageservices#390 ·
All issues in actions/languageservices
Similar issues
-
calcite-components needs triage refactor
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Esri/calcite-design-system#15203 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 91/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 95/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Automattic/studio#4908 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 90/100