Skip to content

Conversation

@hhgyu
Copy link

@hhgyu hhgyu commented Dec 29, 2025

Problem

When using actions with nested annotated tags (where a tag points to
another tag instead of a commit), act fails with:

Unable to resolve v4: unsupported object type

This affects actions like:

  • gradle/actions@v4
  • borales/actions-yarn@v4
  • pr-mpt/actions-commit-hash@v2

These use a chained tag structure: vX (tag) → vX.x.x (tag) → commit

Solution

Add recursive tag resolution to handle nested annotated tags:

  • resolveTagToCommit(): Recursively dereferences tag chains until reaching a commit
  • resolveRefToCommit(): Wrapper that tries standard resolution first, falls back to nested tag handling

Testing

  • Added unit tests for nested tag resolution (1-3 levels deep)
  • Added integration test with gradle/actions@v4
  • All existing tests pass

Fixes #5862
Fixes #1600
Related: #1545

Add support for resolving nested annotated tags where a tag points to
another tag instead of directly to a commit (e.g., v4 -> v4.4.4 -> commit).

This fixes the "unsupported object type" error when using actions like
gradle/actions@v4 which use chained annotated tags.

Changes:
- Add resolveTagToCommit() to recursively resolve tag chains
- Add resolveRefToCommit() wrapper for graceful fallback
- Update NewGitCloneExecutor to use the new resolver
- Add comprehensive tests for nested tag scenarios
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1 participant