Repository: JoshuaKGoldberg/create-typescript-app (ts)

Issue:
🐛 Bug: Exempt repository admins from branch ruleset merge requirements
### Bug Report Checklist

- [X] I have tried restarting my IDE and the issue persists.
- [X] I have pulled the latest `main` branch of the repository.
- [X] I have [searched for related issues](https://github.com/JoshuaKGoldberg/create-typescript-app/issues?q=is%3Aissue) and found none that matched my issue.

### Expected

Back before #1309 -> #1788, when branch protections were set, they exempted repository admins -e.g. me on this repo- from being blocked on merging. I would expect that to remain the same.

### Actual

After #1788, repo admins are blocked too.

### Additional Info

I'd wanted to set this intentionally at first to make things more strict. Strictness good!

I was hoping the UI would make it easier for admins to bypass. But no, there's just ... nothing on there I can see. I'd planned on trying this out for longer but it's _really_ annoying. Ah well.

💖 

Pull request:
fix: bypass repository admin (id 5) in branch ruleset
## PR Checklist

- [x] Addresses an existing open issue: fixes #1790
- [x] That issue was marked as [`status: accepting prs`](https://github.com/JoshuaKGoldberg/create-typescript-app/issues?q=is%3Aopen+is%3Aissue+label%3A%22status%3A+accepting+prs%22)
- [x] Steps in [CONTRIBUTING.md](https://github.com/JoshuaKGoldberg/create-typescript-app/blob/main/.github/CONTRIBUTING.md) were taken

## Overview

Pending being told contrary information, hardcodes `actor_id: 5` for the repository role to always be allowed to bypass branch protection ruleset. 

💖 

Patch:
diff --git a/src/next/blocks/blockRepositoryBranchRuleset.ts b/src/next/blocks/blockRepositoryBranchRuleset.ts
index efdff96..0c26e38 100644
--- a/src/next/blocks/blockRepositoryBranchRuleset.ts
+++ b/src/next/blocks/blockRepositoryBranchRuleset.ts
@@ -16,6 +16,15 @@ export const blockRepositoryBranchRuleset = base.createBlock({
 					id: "branch-ruleset",
 					async send({ octokit }) {
 						await octokit.request("POST /repos/{owner}/{repo}/rulesets", {
+							bypass_actors: [
+								{
+									// This *seems* to be the Repository Admin role always?
+									// https://github.com/github/rest-api-description/issues/4406
+									actor_id: 5,
+									actor_type: "RepositoryRole",
+									bypass_mode: "always",
+								},
+							],
 							conditions: {
 								ref_name: {
 									exclude: [],
diff --git a/src/steps/initializeGitHubRepository/initializeBranchProtectionSettings.ts b/src/steps/initializeGitHubRepository/initializeBranchProtectionSettings.ts
index cbb817b..7a9de96 100644
--- a/src/steps/initializeGitHubRepository/initializeBranchProtectionSettings.ts
+++ b/src/steps/initializeGitHubRepository/initializeBranchProtectionSettings.ts
@@ -9,6 +9,15 @@ export async function initializeBranchProtectionSettings(
 ) {
 	try {
 		await octokit.request("POST /repos/{owner}/{repo}/rulesets", {
+			bypass_actors: [
+				{
+					// This *seems* to be the Repository Admin role always?
+					// https://github.com/github/rest-api-description/issues/4406
+					actor_id: 5,
+					actor_type: "RepositoryRole",
+					bypass_mode: "always",
+				},
+			],
 			conditions: {
 				ref_name: {
 					exclude: [],


Test patch:
diff --git a/src/steps/initializeBranchProtectionSettings.test.ts b/src/steps/initializeBranchProtectionSettings.test.ts
index 3e097e1..0c915d3 100644
--- a/src/steps/initializeBranchProtectionSettings.test.ts
+++ b/src/steps/initializeBranchProtectionSettings.test.ts
@@ -39,6 +39,13 @@ describe("migrateBranchProtectionSettings", () => {
 			  [
 			    "POST /repos/{owner}/{repo}/rulesets",
 			    {
+			      "bypass_actors": [
+			        {
+			          "actor_id": 5,
+			          "actor_type": "RepositoryRole",
+			          "bypass_mode": "always",
+			        },
+			      ],
 			      "conditions": {
 			        "ref_name": {
 			          "exclude": [],
@@ -152,6 +159,13 @@ describe("migrateBranchProtectionSettings", () => {
 			  [
 			    "POST /repos/{owner}/{repo}/rulesets",
 			    {
+			      "bypass_actors": [
+			        {
+			          "actor_id": 5,
+			          "actor_type": "RepositoryRole",
+			          "bypass_mode": "always",
+			        },
+			      ],
 			      "conditions": {
 			        "ref_name": {
 			          "exclude": [],