name: Merge back a reference to main
on:
  workflow_call:
    inputs:
      sha:
        required: true
        type: string
    secrets:
      BOT_GITHUB_TOKEN:
        required: true

jobs:
  merge-back:
    name: Merge back the reference to main
    runs-on: ubuntu-24.04

    permissions:
      contents: read

    steps:
      - name: Checkout the code
        uses: actions/checkout@v4
        with:
          sparse-checkout: |
            .github/scripts

      - name: Push branch and open a PR
        uses: actions/github-script@v7.0.1
        env:
          SHA: ${{ inputs.sha }}
        with:
          github-token: ${{ secrets.BOT_GITHUB_TOKEN }}
          script: |
            const script = require('./.github/scripts/merge-back.cjs');
            await script({ core, github, context });
