From 050cd22a286cecbae1cd03cb8fb148d38e2a998e Mon Sep 17 00:00:00 2001 From: Yuriy Kirillov Date: Sat, 12 Sep 2026 22:33:41 +0200 Subject: [PATCH] chore: reference internal actions/* via $/, not a version pin collect-issues-shared.yml, collect-pull-requests-shared.yml, and proposal-shared.yml pinned their own sibling composite actions to explicit tags (v0.5/v0.6) or @main, requiring a manual bump in lockstep with every release -- the exact churn dependabot's #81 was chasing. rubykatzen/baseline's own shared workflows (e.g. lint-shared.yml) instead reference sibling actions via $/, which resolves to this repository at the same ref the caller pinned for the shared workflow itself. Adopting it here means these internal references can no longer drift out of sync with a release, and never need bumping again. Supersedes #81. Co-Authored-By: Claude Sonnet 5 --- .github/workflows/collect-issues-shared.yml | 2 +- .../collect-pull-requests-shared.yml | 2 +- .github/workflows/proposal-shared.yml | 23 ++++++++----------- CHANGELOG.md | 9 ++++++++ 4 files changed, 21 insertions(+), 15 deletions(-) diff --git a/.github/workflows/collect-issues-shared.yml b/.github/workflows/collect-issues-shared.yml index 567f653..5284190 100644 --- a/.github/workflows/collect-issues-shared.yml +++ b/.github/workflows/collect-issues-shared.yml @@ -28,7 +28,7 @@ jobs: collect: runs-on: ubuntu-latest steps: - - uses: rubykatzen/starcast/actions/collect-issues@v0.5 + - uses: $/actions/collect-issues with: organizations: ${{ inputs.organizations }} repositories: ${{ inputs.repositories }} diff --git a/.github/workflows/collect-pull-requests-shared.yml b/.github/workflows/collect-pull-requests-shared.yml index 105b00f..b87d490 100644 --- a/.github/workflows/collect-pull-requests-shared.yml +++ b/.github/workflows/collect-pull-requests-shared.yml @@ -28,7 +28,7 @@ jobs: collect: runs-on: ubuntu-latest steps: - - uses: rubykatzen/starcast/actions/collect-pull-requests@v0.5 + - uses: $/actions/collect-pull-requests with: organizations: ${{ inputs.organizations }} repositories: ${{ inputs.repositories }} diff --git a/.github/workflows/proposal-shared.yml b/.github/workflows/proposal-shared.yml index ce86017..a301069 100644 --- a/.github/workflows/proposal-shared.yml +++ b/.github/workflows/proposal-shared.yml @@ -70,9 +70,6 @@ permissions: issues: write contents: write pull-requests: write -# actions/proposal is pinned to @main below, not a version tag, while v0.9.0 -# is still unreleased -- switch back to @v0.9 (matching this repo's other -# reusable workflows' pinned-tag pattern) once that tag exists. jobs: validate: runs-on: ubuntu-latest @@ -102,7 +99,7 @@ jobs: # the comment 👀 on success. - name: Verify control comment if: github.event_name == 'issue_comment' - uses: rubykatzen/starcast/actions/proposal@main + uses: $/actions/proposal with: mode: check-control-comment repository: ${{ github.repository }} @@ -120,7 +117,7 @@ jobs: steps: - name: Apply proposal id: apply - uses: rubykatzen/starcast/actions/proposal@main + uses: $/actions/proposal with: mode: apply repository: ${{ github.repository }} @@ -132,7 +129,7 @@ jobs: github_token: ${{ secrets.token }} - name: Report to Telegram if: always() - uses: rubykatzen/starcast/actions/telegram-notify@v0.6 + uses: $/actions/telegram-notify with: chat_id: ${{ inputs.telegram_chat_id }} bot_token: ${{ secrets.telegram_bot_token }} @@ -152,7 +149,7 @@ jobs: steps: - name: Reject proposal id: reject - uses: rubykatzen/starcast/actions/proposal@main + uses: $/actions/proposal with: mode: reject repository: ${{ github.repository }} @@ -160,7 +157,7 @@ jobs: github_token: ${{ secrets.token }} - name: Report to Telegram if: always() - uses: rubykatzen/starcast/actions/telegram-notify@v0.6 + uses: $/actions/telegram-notify with: chat_id: ${{ inputs.telegram_chat_id }} bot_token: ${{ secrets.telegram_bot_token }} @@ -185,7 +182,7 @@ jobs: run: 'echo "::notice::distill is not implemented yet (see #11, #13)"' - name: Report to Telegram if: always() - uses: rubykatzen/starcast/actions/telegram-notify@v0.6 + uses: $/actions/telegram-notify with: chat_id: ${{ inputs.telegram_chat_id }} bot_token: ${{ secrets.telegram_bot_token }} @@ -209,7 +206,7 @@ jobs: run: 'echo "::notice::rework is not implemented yet (see #11)"' - name: Report to Telegram if: always() - uses: rubykatzen/starcast/actions/telegram-notify@v0.6 + uses: $/actions/telegram-notify with: chat_id: ${{ inputs.telegram_chat_id }} bot_token: ${{ secrets.telegram_bot_token }} @@ -228,7 +225,7 @@ jobs: steps: - name: Dequeue next proposal candidate id: dequeue - uses: rubykatzen/starcast/actions/proposal@main + uses: $/actions/proposal with: mode: dequeue capacity_query: ${{ inputs.capacity_query }} @@ -239,7 +236,7 @@ jobs: - name: Create proposal id: propose if: steps.dequeue.outputs.result == 'dequeued' - uses: rubykatzen/starcast/actions/proposal@main + uses: $/actions/proposal with: mode: propose parent_issue_id: ${{ steps.dequeue.outputs.issue_id }} @@ -250,7 +247,7 @@ jobs: github_token: ${{ secrets.token }} - name: Report to Telegram if: always() - uses: rubykatzen/starcast/actions/telegram-notify@v0.6 + uses: $/actions/telegram-notify with: chat_id: ${{ inputs.telegram_chat_id }} bot_token: ${{ secrets.telegram_bot_token }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 580c9c0..501ee8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -58,6 +58,15 @@ `workflow_dispatch` runs. - `issue_number`/`comment_id` inputs on `proposal-shared.yml` change from `type: number` to `type: string`. +- `collect-issues-shared.yml`, `collect-pull-requests-shared.yml`, and + `proposal-shared.yml` reference their sibling `actions/*` composite + actions via `$/actions/...` instead of a version-pinned + `rubykatzen/starcast/actions/...@vX`, matching the pattern + `rubykatzen/baseline`'s own shared workflows use. `$/` resolves to this + repository at the same ref the caller pinned for the shared workflow + itself, so these internal references track releases automatically and + no longer need a separate version bump (and can't drift out of sync + with it) every time one is cut. ### Fixed