Skip warnings for actions already pinned to full SHAs#8815
Conversation
|
@copilot same error here: |
When a user provides an action with a full 40-character SHA (e.g., actions/checkout@93cb6efe...), the system now recognizes it's already pinned and returns it immediately without issuing warnings about dynamic resolution failure. This fixes the issue where users saw unnecessary warnings like: "⚠ Unable to resolve actions/checkout@93cb6efe... dynamically, using hardcoded pin for actions/checkout@v5.0.1" Changes: - Modified GetActionPinWithData() to check if version is already a full SHA before attempting dynamic resolution - Added test TestGetActionPinWithData_AlreadySHA to verify no warnings are issued for SHA-pinned actions - Uses existing isValidFullSHA() function from features_validation.go Fixes issue with warnings for SHA-pinned custom actions Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Refined the approach to preserve existing behavior while suppressing warnings: - When a version is a SHA and matches a hardcoded pin, annotate it with the version tag (e.g., actions/checkout@SHA # v5.0.1) - When a version is a SHA that doesn't match any pin, return it as-is - Only skip dynamic resolution attempts for SHAs (they can't be resolved anyway) - Suppress warnings for SHAs in all code paths This preserves the useful behavior of annotating known SHAs with their version tags while eliminating unnecessary warnings like: "⚠ Unable to resolve actions/checkout@93cb6efe... dynamically" All existing tests pass including TestApplyActionPinToStep which expects SHA-to-version-tag annotation. Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
🎉 Yo ho ho! Smoke Copilot Safe Inputs found the treasure and completed successfully! ⚓💰 |
|
✨ The prophecy is fulfilled... Smoke Codex has completed its mystical journey. The stars align. 🌟 |
|
🎉 Yo ho ho! Changeset Generator found the treasure and completed successfully! ⚓💰 |
|
📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤 |
|
🎬 THE END — Smoke Claude MISSION: ACCOMPLISHED! The hero saves the day! ✨ |
|
✅ Firewall validation complete... Smoke Codex Firewall confirmed network sandboxing is operational. 🛡️ |
|
🤖 DIAGNOSTIC COMPLETE: Smoke Copilot No Firewall STATUS: ALL_UNITS_OPERATIONAL. MISSION_SUCCESS. |
|
📰 VERDICT: Smoke Copilot Playwright has concluded. All systems operational. This is a developing story. 🎤 |
... The fix is already in place in commit f085d95. I tested compiling Please rebuild the binary with |
Smoke Test Results: Copilot Safe Inputs✅ File Writing: Successfully created Overall Status: FAIL The
|
Copilot Smoke Test ResultsLast 2 Merged PRs:
Test Results:
Overall Status: PASS ✅
|
|
Smoke: Codex firewall
|
Smoke Test Results - Copilot Engine (No Firewall)✅ All tests passed successfully
|
Smoke Test Results❌ Playwright MCP Test: FAIL - Playwright module not available Overall Status: FAIL Tests completed for workflow run 20686026503.
|
Smoke Test Results - Claude EngineLast 2 Merged PRs:
Test Results:
Status: PASS (5/6 tests passed)
|
|
Recent merged PRs: #8814 Add default value to engine field in included_file_schema.json; #8813 Add $comment validation documentation to stdio_mcp_tool in included schema
|
Actions pinned to full 40-character SHAs were triggering unnecessary dynamic resolution warnings like:
Changes
Modified
GetActionPinWithData()to detect and handle SHA-based versions:Added test coverage:
TestGetActionPinWithData_AlreadySHAverifies no warnings for SHA-pinned actionsBehavior
Preserves existing SHA-to-version annotation when SHA matches a hardcoded pin.
Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
https://api.github.com/user/usr/bin/gh gh api user --jq .login -json GO111MODULE 0.1-go1.25.0.linGOMODCACHE GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 0.1-go1.25.0.linux-amd64/bin/go GOINSECURE GOMOD GOMODCACHE go(http block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.
Changeset