Instead of creating multiple workflows, you could create one workflow with multiple jobs that need each other via the needs: keyword.
https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#jobsjob_idneeds
on:
pull_request:
jobs:
tf-plan-upload:
runs-on: ubuntu-latest
steps:
- run: echo "This job does TF plan and uploads"
tf-plan-download-opa-scan:
needs: [tf-plan-upload]
runs-on: ubuntu-latest
steps:
- run: echo "This job downloads the TF plan and runs the OPA scan"