chore: verify missing/invalid/private reproduction links (#54724)
### What?
This PR adds a new action that verifies if the reproduction link is correct _after_ the issue has been created. If it is not, we close the issue and comment on it with the correct steps to take. Check out the [rendered comment here](https://github.com/balazsorban44/next.js/blob/chore/gh-invalid-link-checker/.github/actions/issue-validator/repro-link/invalid-link.md).
Additionally, this PR also does some refactoring to simplify our GitHub actions related to issues.
Tests:
Issue that was supposed to be closed:
- https://github.com/balazsorban44/next.js/issues/48
- Issue comment: https://github.com/balazsorban44/next.js/issues/48#issuecomment-1698836121
- Issue opened action: https://github.com/balazsorban44/next.js/actions/runs/6023209630
- Issue labeled action: https://github.com/balazsorban44/next.js/actions/runs/6023209629
Issue that was not supposed to be closed (closed manually afterward):
- https://github.com/balazsorban44/next.js/issues/49
- Issue opened action: https://github.com/balazsorban44/next.js/actions/runs/6023214256
- Issue labeled action: https://github.com/balazsorban44/next.js/actions/runs/6023214258
### Why?
Unfortunately, GitHub is currently missing the [functionality to require a valid reproduction link](https://github.com/orgs/community/discussions/10227) in issue templates. Even if that was supported, this PR adds functionality that could not be covered with a regex validation. Namely, we check if the reproduction is a private repo or not, and potentially could also check the structure to see if it's an actual Next.js project.
### How?
If the link is not in the expected section, not a GitHub, CodeSandbox, or Replay.io link, or does not return an OK response (eg.: private repo/sandbox), the issue is closed/commented.
Related:
- https://github.com/orgs/community/discussions/4629
- https://github.com/orgs/community/discussions/10227
Co-authored-by: Steven <229881+styfle@users.noreply.github.com>