From 3f382440f4d94b02e8cadf0b173ded92b1026bca Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Tue, 24 Feb 2026 12:09:03 +0530 Subject: [PATCH 1/4] Add stale branch cleanup workflow and branch lifecycle policy (#15) * Initial plan * Add stale branch cleanup workflow and lifecycle policy Co-authored-by: vineethkuttan <66076509+vineethkuttan@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: vineethkuttan <66076509+vineethkuttan@users.noreply.github.com> --- .github/workflows/cleanup-stale-branches.yml | 67 ++++++++++++++++++ docs/branch-lifecycle-policy.md | 72 ++++++++++++++++++++ 2 files changed, 139 insertions(+) create mode 100644 .github/workflows/cleanup-stale-branches.yml create mode 100644 docs/branch-lifecycle-policy.md diff --git a/.github/workflows/cleanup-stale-branches.yml b/.github/workflows/cleanup-stale-branches.yml new file mode 100644 index 00000000000..7ea3b287a36 --- /dev/null +++ b/.github/workflows/cleanup-stale-branches.yml @@ -0,0 +1,67 @@ +name: Cleanup Stale Branches + +on: + schedule: + - cron: '0 8 * * 1' # Every Monday at 08:00 UTC + workflow_dispatch: + inputs: + dry_run: + description: 'List stale branches without deleting' + type: boolean + default: true + +permissions: + contents: write + +jobs: + cleanup: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Delete stale branches + # To preserve your branch from cleanup, do ONE of: + # 1. Rename it under archive/: git branch -m my-branch archive/my-branch + # 2. Keep an open PR (including drafts) pointing to it + # 3. Add the branch pattern to PROTECTED below + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + DRY_RUN="${{ github.event_name == 'schedule' && 'true' || inputs.dry_run }}" + COPILOT_DAYS=90 + DEFAULT_DAYS=180 + COPILOT_CUTOFF=$(date -d "$COPILOT_DAYS days ago" +%s) + DEFAULT_CUTOFF=$(date -d "$DEFAULT_DAYS days ago" +%s) + PROTECTED='^(main|master|develop|release/|hotfix/|archive/|[0-9]+\.[0-9]+-stable|preview-)' + + echo "Stale threshold: copilot/* = $COPILOT_DAYS days, others = $DEFAULT_DAYS days | Dry run: $DRY_RUN" + + git branch -r --format='%(refname:short) %(committerdate:unix)' | while read -r REF DATE; do + BRANCH="${REF#origin/}" + [ "$BRANCH" = "HEAD" ] && continue + echo "$BRANCH" | grep -qE "$PROTECTED" && continue + + # copilot branches: 90 days, all others: 180 days + if echo "$BRANCH" | grep -q '^copilot'; then + [ "$DATE" -ge "$COPILOT_CUTOFF" ] 2>/dev/null && continue + else + [ "$DATE" -ge "$DEFAULT_CUTOFF" ] 2>/dev/null && continue + fi + + # Skip branches with open PRs (including drafts) + PR_COUNT=$(gh pr list --head "$BRANCH" --state open --json number --jq 'length' 2>/dev/null || echo "0") + if [ "$PR_COUNT" -gt 0 ]; then + echo "[skipped] $BRANCH (has open PR)" + continue + fi + + LAST=$(date -d "@$DATE" +%Y-%m-%d) + if [ "$DRY_RUN" = "true" ]; then + echo "[stale] $BRANCH (last commit: $LAST)" + else + echo "Deleting $BRANCH (last commit: $LAST)" + git push origin --delete "$BRANCH" || echo " Failed to delete $BRANCH" + fi + done diff --git a/docs/branch-lifecycle-policy.md b/docs/branch-lifecycle-policy.md new file mode 100644 index 00000000000..94cd7f5940e --- /dev/null +++ b/docs/branch-lifecycle-policy.md @@ -0,0 +1,72 @@ +# Branch Lifecycle Policy + +This repository enforces a branch lifecycle policy to keep the branch list clean and manageable. Stale branches are identified automatically and removed after a period of inactivity. + +## How It Works + +A scheduled GitHub Action ([cleanup-stale-branches.yml](../.github/workflows/cleanup-stale-branches.yml)) runs **every Monday at 08:00 UTC** and scans all remote branches for inactivity. + +### Staleness Thresholds + +| Branch type | Stale after | Examples | +|-------------|-------------|----------| +| `copilot/*` | **90 days** | `copilot/fix-xyz`, `copilot/workspace` | +| All other branches | **180 days** | `user/feature`, `abhi/experiment` | + +Scheduled runs are always **dry run** (report only). Deletions require a manual trigger. + +## Protected Branches + +The following branch patterns are **always excluded** from cleanup, regardless of age: + +- `main` / `master` +- `develop` +- `release/*` +- `hotfix/*` +- `archive/*` +- `*-stable` (e.g., `0.72-stable`, `0.80-stable`) +- `preview-*` (e.g., `preview-0.80-test`) + +## Additional Safeguards + +- **Open PRs** — Branches with any open pull request (including drafts) are automatically skipped. + +## How to Keep a Branch + +If your branch must be retained beyond the staleness threshold, use **any** of these methods: + +### 1. Use a protected prefix + +Rename your branch under `archive/`: +``` +git branch -m my-old-branch archive/my-old-branch +git push origin archive/my-old-branch +git push origin --delete my-old-branch +``` + +### 2. Keep an open PR + +Create or keep a pull request (even a draft) from your branch. The workflow skips any branch with an open PR. + +### 3. Add the pattern to the workflow + +Add your branch prefix to the `PROTECTED` regex in the workflow file and submit a PR. + +## Manual Cleanup + +Maintainers can trigger the workflow manually from the **Actions** tab: + +1. Go to **Actions → Cleanup Stale Branches** +2. Click **Run workflow** +3. Set `dry_run = false` to actually delete stale branches + +## FAQ + +**Q: What happens if my branch is deleted by mistake?** +A: Git branch deletions on GitHub are reversible for a short period. You can also restore from a local clone. See [GitHub docs on restoring deleted branches](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/restoring-a-deleted-branch). + +**Q: Will this delete branches with open pull requests?** +A: No. The workflow checks for open PRs (including drafts) and skips those branches. + +**Q: What about stable and preview branches?** +A: All `*-stable` and `preview-*` branches are protected by default and will never be deleted. From aaade79f340c400c1d0d731c26ee80b126565f86 Mon Sep 17 00:00:00 2001 From: Vineeth <66076509+vineethkuttan@users.noreply.github.com> Date: Tue, 24 Feb 2026 12:34:34 +0530 Subject: [PATCH 2/4] Revert "Add stale branch cleanup workflow and branch lifecycle policy (#15)" (#16) This reverts commit 3f382440f4d94b02e8cadf0b173ded92b1026bca. --- .github/workflows/cleanup-stale-branches.yml | 67 ------------------ docs/branch-lifecycle-policy.md | 72 -------------------- 2 files changed, 139 deletions(-) delete mode 100644 .github/workflows/cleanup-stale-branches.yml delete mode 100644 docs/branch-lifecycle-policy.md diff --git a/.github/workflows/cleanup-stale-branches.yml b/.github/workflows/cleanup-stale-branches.yml deleted file mode 100644 index 7ea3b287a36..00000000000 --- a/.github/workflows/cleanup-stale-branches.yml +++ /dev/null @@ -1,67 +0,0 @@ -name: Cleanup Stale Branches - -on: - schedule: - - cron: '0 8 * * 1' # Every Monday at 08:00 UTC - workflow_dispatch: - inputs: - dry_run: - description: 'List stale branches without deleting' - type: boolean - default: true - -permissions: - contents: write - -jobs: - cleanup: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Delete stale branches - # To preserve your branch from cleanup, do ONE of: - # 1. Rename it under archive/: git branch -m my-branch archive/my-branch - # 2. Keep an open PR (including drafts) pointing to it - # 3. Add the branch pattern to PROTECTED below - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - DRY_RUN="${{ github.event_name == 'schedule' && 'true' || inputs.dry_run }}" - COPILOT_DAYS=90 - DEFAULT_DAYS=180 - COPILOT_CUTOFF=$(date -d "$COPILOT_DAYS days ago" +%s) - DEFAULT_CUTOFF=$(date -d "$DEFAULT_DAYS days ago" +%s) - PROTECTED='^(main|master|develop|release/|hotfix/|archive/|[0-9]+\.[0-9]+-stable|preview-)' - - echo "Stale threshold: copilot/* = $COPILOT_DAYS days, others = $DEFAULT_DAYS days | Dry run: $DRY_RUN" - - git branch -r --format='%(refname:short) %(committerdate:unix)' | while read -r REF DATE; do - BRANCH="${REF#origin/}" - [ "$BRANCH" = "HEAD" ] && continue - echo "$BRANCH" | grep -qE "$PROTECTED" && continue - - # copilot branches: 90 days, all others: 180 days - if echo "$BRANCH" | grep -q '^copilot'; then - [ "$DATE" -ge "$COPILOT_CUTOFF" ] 2>/dev/null && continue - else - [ "$DATE" -ge "$DEFAULT_CUTOFF" ] 2>/dev/null && continue - fi - - # Skip branches with open PRs (including drafts) - PR_COUNT=$(gh pr list --head "$BRANCH" --state open --json number --jq 'length' 2>/dev/null || echo "0") - if [ "$PR_COUNT" -gt 0 ]; then - echo "[skipped] $BRANCH (has open PR)" - continue - fi - - LAST=$(date -d "@$DATE" +%Y-%m-%d) - if [ "$DRY_RUN" = "true" ]; then - echo "[stale] $BRANCH (last commit: $LAST)" - else - echo "Deleting $BRANCH (last commit: $LAST)" - git push origin --delete "$BRANCH" || echo " Failed to delete $BRANCH" - fi - done diff --git a/docs/branch-lifecycle-policy.md b/docs/branch-lifecycle-policy.md deleted file mode 100644 index 94cd7f5940e..00000000000 --- a/docs/branch-lifecycle-policy.md +++ /dev/null @@ -1,72 +0,0 @@ -# Branch Lifecycle Policy - -This repository enforces a branch lifecycle policy to keep the branch list clean and manageable. Stale branches are identified automatically and removed after a period of inactivity. - -## How It Works - -A scheduled GitHub Action ([cleanup-stale-branches.yml](../.github/workflows/cleanup-stale-branches.yml)) runs **every Monday at 08:00 UTC** and scans all remote branches for inactivity. - -### Staleness Thresholds - -| Branch type | Stale after | Examples | -|-------------|-------------|----------| -| `copilot/*` | **90 days** | `copilot/fix-xyz`, `copilot/workspace` | -| All other branches | **180 days** | `user/feature`, `abhi/experiment` | - -Scheduled runs are always **dry run** (report only). Deletions require a manual trigger. - -## Protected Branches - -The following branch patterns are **always excluded** from cleanup, regardless of age: - -- `main` / `master` -- `develop` -- `release/*` -- `hotfix/*` -- `archive/*` -- `*-stable` (e.g., `0.72-stable`, `0.80-stable`) -- `preview-*` (e.g., `preview-0.80-test`) - -## Additional Safeguards - -- **Open PRs** — Branches with any open pull request (including drafts) are automatically skipped. - -## How to Keep a Branch - -If your branch must be retained beyond the staleness threshold, use **any** of these methods: - -### 1. Use a protected prefix - -Rename your branch under `archive/`: -``` -git branch -m my-old-branch archive/my-old-branch -git push origin archive/my-old-branch -git push origin --delete my-old-branch -``` - -### 2. Keep an open PR - -Create or keep a pull request (even a draft) from your branch. The workflow skips any branch with an open PR. - -### 3. Add the pattern to the workflow - -Add your branch prefix to the `PROTECTED` regex in the workflow file and submit a PR. - -## Manual Cleanup - -Maintainers can trigger the workflow manually from the **Actions** tab: - -1. Go to **Actions → Cleanup Stale Branches** -2. Click **Run workflow** -3. Set `dry_run = false` to actually delete stale branches - -## FAQ - -**Q: What happens if my branch is deleted by mistake?** -A: Git branch deletions on GitHub are reversible for a short period. You can also restore from a local clone. See [GitHub docs on restoring deleted branches](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/restoring-a-deleted-branch). - -**Q: Will this delete branches with open pull requests?** -A: No. The workflow checks for open PRs (including drafts) and skips those branches. - -**Q: What about stable and preview branches?** -A: All `*-stable` and `preview-*` branches are protected by default and will never be deleted. From 69e1b34d533837fb7222bcbfd38a54cb766c5a34 Mon Sep 17 00:00:00 2001 From: vineethkuttan <66076509+vineethkuttan@users.noreply.github.com> Date: Mon, 2 Mar 2026 12:33:41 +0530 Subject: [PATCH 3/4] Update canary version --- .../@react-native-windows/automation-channel/package.json | 6 +++--- .../automation-commands/package.json | 6 +++--- packages/@react-native-windows/automation/package.json | 6 +++--- packages/@react-native-windows/tester/package.json | 4 ++-- packages/debug-test/package.json | 2 +- packages/e2e-test-app-fabric/package.json | 8 ++++---- packages/playground/package.json | 2 +- packages/sample-app-fabric/package.json | 2 +- packages/sample-custom-component/package.json | 2 +- vnext/package.json | 2 +- 10 files changed, 20 insertions(+), 20 deletions(-) diff --git a/packages/@react-native-windows/automation-channel/package.json b/packages/@react-native-windows/automation-channel/package.json index 1970f96f962..a9fb9c697a0 100644 --- a/packages/@react-native-windows/automation-channel/package.json +++ b/packages/@react-native-windows/automation-channel/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-windows/automation-channel", - "version": "0.0.0-canary.1031", + "version": "0.0.0-canary.1032", "license": "MIT", "repository": { "type": "git", @@ -34,7 +34,7 @@ "prettier": "2.8.8", "react": "19.2.0", "react-native": "0.83.0-nightly-20251012-6f482708b", - "react-native-windows": "^0.0.0-canary.1031", + "react-native-windows": "^0.0.0-canary.1032", "typescript": "5.0.4" }, "files": [ @@ -57,4 +57,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/@react-native-windows/automation-commands/package.json b/packages/@react-native-windows/automation-commands/package.json index 822dffcb6ec..639d4102107 100644 --- a/packages/@react-native-windows/automation-commands/package.json +++ b/packages/@react-native-windows/automation-commands/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-windows/automation-commands", - "version": "0.0.0-canary.1031", + "version": "0.0.0-canary.1032", "description": "Allows controlling your react-native-windows application", "main": "lib-commonjs/index.js", "license": "MIT", @@ -18,7 +18,7 @@ "watch": "rnw-scripts watch" }, "dependencies": { - "@react-native-windows/automation-channel": "0.0.0-canary.1031", + "@react-native-windows/automation-channel": "0.0.0-canary.1032", "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1" }, @@ -52,4 +52,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/@react-native-windows/automation/package.json b/packages/@react-native-windows/automation/package.json index c7d2c534aea..1dc198aafee 100644 --- a/packages/@react-native-windows/automation/package.json +++ b/packages/@react-native-windows/automation/package.json @@ -1,6 +1,6 @@ { "name": "@react-native-windows/automation", - "version": "0.0.0-canary.1031", + "version": "0.0.0-canary.1032", "description": "UI Automation Suite for React Native Windows Applications", "main": "lib-commonjs/index.js", "repository": { @@ -18,7 +18,7 @@ "watch": "rnw-scripts watch" }, "dependencies": { - "@react-native-windows/automation-channel": "0.0.0-canary.1031", + "@react-native-windows/automation-channel": "0.0.0-canary.1032", "@react-native-windows/fs": "^0.0.0-canary.70", "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", @@ -63,4 +63,4 @@ "engines": { "node": ">= 22" } -} +} \ No newline at end of file diff --git a/packages/@react-native-windows/tester/package.json b/packages/@react-native-windows/tester/package.json index 9ffa51f0cc6..581be9385e9 100644 --- a/packages/@react-native-windows/tester/package.json +++ b/packages/@react-native-windows/tester/package.json @@ -20,7 +20,7 @@ "@react-native-picker/picker": "2.11.0", "react": "19.2.0", "react-native": "0.83.0-nightly-20251012-6f482708b", - "react-native-windows": "^0.0.0-canary.1031", + "react-native-windows": "^0.0.0-canary.1032", "react-native-xaml": "^0.0.80" }, "devDependencies": { @@ -35,7 +35,7 @@ "just-scripts": "^1.3.3", "react-native": "0.83.0-nightly-20251012-6f482708b", "react-native-platform-override": "0.0.0-canary.1019", - "react-native-windows": "^0.0.0-canary.1031", + "react-native-windows": "^0.0.0-canary.1032", "typescript": "5.0.4" }, "engines": { diff --git a/packages/debug-test/package.json b/packages/debug-test/package.json index 1153859bdfd..18214ce6f5e 100644 --- a/packages/debug-test/package.json +++ b/packages/debug-test/package.json @@ -8,7 +8,7 @@ "lint:fix": "rnw-scripts lint:fix" }, "devDependencies": { - "@react-native-windows/automation": "0.0.0-canary.1031", + "@react-native-windows/automation": "0.0.0-canary.1032", "@react-native-windows/fs": "^0.0.0-canary.70", "@rnw-scripts/eslint-config": "1.2.38", "@rnw-scripts/ts-config": "2.0.6", diff --git a/packages/e2e-test-app-fabric/package.json b/packages/e2e-test-app-fabric/package.json index 069fd960917..1cc788db394 100644 --- a/packages/e2e-test-app-fabric/package.json +++ b/packages/e2e-test-app-fabric/package.json @@ -14,14 +14,14 @@ "bundle:debug": "npx @react-native-community/cli bundle --entry-file index.js --bundle-output ./windows/x64/Debug/RNTesterApp-Fabric/Bundle/index.windows.bundle --assets-dest ./windows/x64/Debug/RNTesterApp-Fabric/Bundle --platform windows" }, "dependencies": { - "@react-native-windows/automation-channel": "0.0.0-canary.1031", + "@react-native-windows/automation-channel": "0.0.0-canary.1032", "@react-native-windows/tester": "0.0.1", "@types/react": "^19.2.0", "@typescript-eslint/eslint-plugin": "^7.1.1", "@typescript-eslint/parser": "^7.1.1", "react": "^19.2.0", "react-native": "0.83.0-nightly-20251012-6f482708b", - "react-native-windows": "^0.0.0-canary.1031" + "react-native-windows": "^0.0.0-canary.1032" }, "devDependencies": { "@babel/core": "^7.25.2", @@ -31,8 +31,8 @@ "@babel/runtime": "^7.20.0", "@react-native-community/cli": "20.0.0", "@react-native/metro-config": "0.83.0-nightly-20251012-6f482708b", - "@react-native-windows/automation": "0.0.0-canary.1031", - "@react-native-windows/automation-commands": "0.0.0-canary.1031", + "@react-native-windows/automation": "0.0.0-canary.1032", + "@react-native-windows/automation-commands": "0.0.0-canary.1032", "@rnw-scripts/babel-node-config": "2.3.3", "@rnw-scripts/babel-react-native-config": "0.0.0", "@rnw-scripts/eslint-config": "1.2.38", diff --git a/packages/playground/package.json b/packages/playground/package.json index c2133a2ab59..6ad0d44f3fb 100644 --- a/packages/playground/package.json +++ b/packages/playground/package.json @@ -16,7 +16,7 @@ "@typescript-eslint/parser": "^7.1.1", "react": "^19.2.0", "react-native": "0.83.0-nightly-20251012-6f482708b", - "react-native-windows": "^0.0.0-canary.1031" + "react-native-windows": "^0.0.0-canary.1032" }, "devDependencies": { "@babel/core": "^7.25.2", diff --git a/packages/sample-app-fabric/package.json b/packages/sample-app-fabric/package.json index 8a201e64d39..d3506cb38b9 100644 --- a/packages/sample-app-fabric/package.json +++ b/packages/sample-app-fabric/package.json @@ -18,7 +18,7 @@ "@typescript-eslint/parser": "^7.1.1", "react": "^19.2.0", "react-native": "0.83.0-nightly-20251012-6f482708b", - "react-native-windows": "^0.0.0-canary.1031" + "react-native-windows": "^0.0.0-canary.1032" }, "devDependencies": { "@babel/core": "^7.25.2", diff --git a/packages/sample-custom-component/package.json b/packages/sample-custom-component/package.json index 2ba576e2e67..042fe7307f8 100644 --- a/packages/sample-custom-component/package.json +++ b/packages/sample-custom-component/package.json @@ -24,7 +24,7 @@ "react": "^19.2.0", "minimatch": "^10.0.3", "react-native": "0.83.0-nightly-20251012-6f482708b", - "react-native-windows": "^0.0.0-canary.1031" + "react-native-windows": "^0.0.0-canary.1032" }, "devDependencies": { "@babel/core": "^7.25.2", diff --git a/vnext/package.json b/vnext/package.json index 48d7a8f0a10..a613a6ef846 100644 --- a/vnext/package.json +++ b/vnext/package.json @@ -1,6 +1,6 @@ { "name": "react-native-windows", - "version": "0.0.0-canary.1031", + "version": "0.0.0-canary.1032", "license": "MIT", "repository": { "type": "git", From b002b62ad876b684d90b67a826f7ad6dce1a0b71 Mon Sep 17 00:00:00 2001 From: vineethkuttan <66076509+vineethkuttan@users.noreply.github.com> Date: Mon, 2 Mar 2026 12:34:57 +0530 Subject: [PATCH 4/4] Change files --- ...ws-automation-7b0d6496-751c-452d-b142-4a3cd05a5deb.json | 7 +++++++ ...ation-channel-35771060-cfc6-469e-be95-3a5135e8ab88.json | 7 +++++++ ...tion-commands-d367c31a-aab3-49fc-92f5-f8e71822047e.json | 7 +++++++ ...ative-windows-272136c0-cc9b-47bb-a75e-4bb666a90e8d.json | 7 +++++++ 4 files changed, 28 insertions(+) create mode 100644 change/@react-native-windows-automation-7b0d6496-751c-452d-b142-4a3cd05a5deb.json create mode 100644 change/@react-native-windows-automation-channel-35771060-cfc6-469e-be95-3a5135e8ab88.json create mode 100644 change/@react-native-windows-automation-commands-d367c31a-aab3-49fc-92f5-f8e71822047e.json create mode 100644 change/react-native-windows-272136c0-cc9b-47bb-a75e-4bb666a90e8d.json diff --git a/change/@react-native-windows-automation-7b0d6496-751c-452d-b142-4a3cd05a5deb.json b/change/@react-native-windows-automation-7b0d6496-751c-452d-b142-4a3cd05a5deb.json new file mode 100644 index 00000000000..fbca390488f --- /dev/null +++ b/change/@react-native-windows-automation-7b0d6496-751c-452d-b142-4a3cd05a5deb.json @@ -0,0 +1,7 @@ +{ + "type": "prerelease", + "comment": "Update canary version", + "packageName": "@react-native-windows/automation", + "email": "66076509+vineethkuttan@users.noreply.github.com", + "dependentChangeType": "patch" +} diff --git a/change/@react-native-windows-automation-channel-35771060-cfc6-469e-be95-3a5135e8ab88.json b/change/@react-native-windows-automation-channel-35771060-cfc6-469e-be95-3a5135e8ab88.json new file mode 100644 index 00000000000..3a8353d8d40 --- /dev/null +++ b/change/@react-native-windows-automation-channel-35771060-cfc6-469e-be95-3a5135e8ab88.json @@ -0,0 +1,7 @@ +{ + "type": "prerelease", + "comment": "Update canary version", + "packageName": "@react-native-windows/automation-channel", + "email": "66076509+vineethkuttan@users.noreply.github.com", + "dependentChangeType": "patch" +} diff --git a/change/@react-native-windows-automation-commands-d367c31a-aab3-49fc-92f5-f8e71822047e.json b/change/@react-native-windows-automation-commands-d367c31a-aab3-49fc-92f5-f8e71822047e.json new file mode 100644 index 00000000000..602b5db1f33 --- /dev/null +++ b/change/@react-native-windows-automation-commands-d367c31a-aab3-49fc-92f5-f8e71822047e.json @@ -0,0 +1,7 @@ +{ + "type": "prerelease", + "comment": "Update canary version", + "packageName": "@react-native-windows/automation-commands", + "email": "66076509+vineethkuttan@users.noreply.github.com", + "dependentChangeType": "patch" +} diff --git a/change/react-native-windows-272136c0-cc9b-47bb-a75e-4bb666a90e8d.json b/change/react-native-windows-272136c0-cc9b-47bb-a75e-4bb666a90e8d.json new file mode 100644 index 00000000000..10d39787408 --- /dev/null +++ b/change/react-native-windows-272136c0-cc9b-47bb-a75e-4bb666a90e8d.json @@ -0,0 +1,7 @@ +{ + "type": "prerelease", + "comment": "Update canary version", + "packageName": "react-native-windows", + "email": "66076509+vineethkuttan@users.noreply.github.com", + "dependentChangeType": "patch" +}