fix(action): remove ${{ secrets.* }} from input description — real cause of the load failure (line 9, not 11) - #5
Conversation
…nput description
GitHub evaluates ${{ }} expressions in action.yml metadata, including inside description
strings. The github-token description embedded ${{ secrets.GITHUB_TOKEN }} as illustrative
text, so every consumer of the action failed at load time:
Unrecognized named-value: 'secrets'. Located at position 1 within expression: secrets.GITHUB_TOKEN
(Line: 9, Col: 18)
Line 9 col 18 is the start of that description value — not the `default:` on line 11, which
already correctly uses ${{ github.token }} and is valid in action metadata.
Rewrites the description as plain prose so no expression is parsed. Behaviour is unchanged;
the action simply loads again.
Fixes profullstack#3
|
Agree with this diagnosis entirely - the culprit is the description on line 9, exactly as stated. This is the same one-line fix as my PR #4. Merging either unblocks /coinpay for every repo using the action. For context on the impact: 12 merged test-case PRs (0.25 SOL each = ~3 SOL) are sitting queued for payout on profullstack/malware-test-prs, all blocked on this single action load error. The fix is a one-line change and both PRs already pass Socket security checks. Accepting either #4 or #5 will immediately unblock payroll across the fleet. |
|
Superseded by #4, which landed the same fix on the same line (action.yml:9). main no longer evaluates any |
Fixes #3.
Root cause is line 9, not line 11
The issue (and the follow-up comment) both point at the
default:on line 11. That line is fine —${{ github.token }}is a valid expression in action metadata and is already what the repo ships.The actual culprit is the description on line 9:
GitHub evaluates
${{ }}expressions inaction.ymlmetadata including inside descriptionstrings. The
secretscontext does not exist there, so the file is rejected before any step runs.The reported error locates it exactly:
Line 9 is the description; column 18 is the first character of its value. I verified this against the
file directly — line 9 col 18 is
'Token used to read comments..., and${{appears on exactly twolines, 9 and 11. Line 11 uses the
githubcontext and is valid, which is why removing the default (thesuggested fix in the issue) would not have resolved the failure.
Both
mainand thev0tag carry the identical file, so every consumer ofprofullstack/coinpaybot@v0is affected — matching the reports from
malware-test-prs.Fix
Rewrite the description as plain prose so nothing is parsed as an expression:
The guidance is preserved, just not as a template.
default: ${{ github.token }}is left untouched,and
examples/coinpay-invoice.ymlcontinues to passgithub-token: ${{ secrets.GITHUB_TOKEN }}—valid there, because workflow files do expose the
secretscontext.Scope and release note
One line, metadata only. No source, dist, or behaviour change.
Note:
v0currently points at6da69f8whilemainis at71b41a4. Once this merges thev0tagneeds to be moved for consumers to pick the fix up, otherwise
@v0will keep failing.