Skip to content

chore(#613): remove relocated canary-rollout engine + bootstrap (now in .github) - #1128

Merged
don-petry merged 1 commit into
mainfrom
epic-613-cutover-remove-relocated
Jul 9, 2026
Merged

don-petry merged 1 commit into
mainfrom
epic-613-cutover-remove-relocated

Conversation

@don-petry

Copy link
Copy Markdown
Collaborator

What

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling were relocated to petry-projects/.github (.github#624, merged + live-validated). This removes the now-duplicate copies here so .github is the single home.

Deleted (relocated to .github)

  • scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  • scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  • scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  • scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  • standards/canary-rings.json
  • .github/workflows/canary-rollout.yml ← stops this repo's 4h schedule
  • docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

Kept deliberately (NOT true duplicates)

  • scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh. This repo's file is the minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a larger apply/audit superset. De-duping needs an aw-standards-sync.sh refactor — out of scope for the cutover.
  • docs/release/versioning.md — a broad release doc for this repo (referenced by cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references are repointed to petry-projects/.github and the stale "not yet cross-repo" blockquote refreshed.

Sequencing (hard order)

This lands first → stops this repo's schedule. The relocated workflow in .github currently ships disabled; its schedule: is re-enabled in the companion PR-C2 only after this merges, so the two engines never run the mutating (autocut / promote-all) schedule at the same time. Both CANARY_AUTO_CUT and CANARY_AUTO_PROMOTE are true, so overlap would race on tag mutations — hence the strict order.

Refs #613

🤖 Generated with Claude Code

…in .github)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 9, 2026 03:03
@don-petry
don-petry requested a review from a team as a code owner July 9, 2026 03:03
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@coderabbitai

coderabbitai Bot commented Jul 9, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@don-petry, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 55 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 5a9be789-c663-4248-8406-914a246c23d8

📥 Commits

Reviewing files that changed from the base of the PR and between f882266 and 57597ba.

📒 Files selected for processing (14)
  • .github/workflows/canary-rollout.yml
  • docs/bootstrap/new-repo-validation.md
  • docs/initiatives/canary-rollout-adr.md
  • docs/release/versioning.md
  • scripts/apply-repo-settings.sh
  • scripts/apply-rulesets.sh
  • scripts/bootstrap-new-repo.sh
  • scripts/canary-rollout.sh
  • scripts/lib/canary-rollout.sh
  • standards/canary-rings.json
  • tests/canary_rollout.bats
  • tests/test_apply_repo_settings.bats
  • tests/test_apply_rulesets.bats
  • tests/test_bootstrap_new_repo.bats
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch epic-613-cutover-remove-relocated

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

sonarqubecloud Bot commented Jul 9, 2026

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request cleans up the repository by deleting several scripts, tests, ADRs, and configuration files (including bootstrap-new-repo.sh, canary-rollout.sh, and canary-rings.json) that have been relocated to the central petry-projects/.github repository. It also updates docs/release/versioning.md to reflect these relocations. The review feedback recommends enhancing the updated documentation in docs/release/versioning.md by turning references to the relocated canary-rings.json and the petry-projects/.github repository into markdown hyperlinks for better navigation.

Comment on lines +70 to +71
machine-readable source of truth is `standards/canary-rings.json`, now hosted in
`petry-projects/.github` and consumed by the promotion automation (#501, relocated there under #613).

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

Since standards/canary-rings.json has been relocated to the petry-projects/.github repository, it would be highly beneficial to turn these references into hyperlinks. This maintains consistency with the rest of the document, which heavily utilizes markdown links for external and internal references, and makes it much easier for readers to navigate directly to the relocated files.

Suggested change
machine-readable source of truth is `standards/canary-rings.json`, now hosted in
`petry-projects/.github` and consumed by the promotion automation (#501, relocated there under #613).
machine-readable source of truth is [`standards/canary-rings.json`](https://github.com/petry-projects/.github/blob/main/standards/canary-rings.json), now hosted in
[`petry-projects/.github`](https://github.com/petry-projects/.github) and consumed by the promotion automation (#501, relocated there under #613).

Comment on lines +156 to +160
> **Now registered in `standards/canary-rings.json`.** The promotion automation (`canary-rollout.sh`,
> #501) — relocated to `petry-projects/.github` under #613 — moves channel tags **cross-repo** via `gh api`
> ref updates on each agent's host repo (#1054), so the six reusables above are registered under the full
> `{next, ring0, ring1, stable}` model (#870). `feature-ideation` remains **absent** for now: its host + ring
> assignment aren't settled. (Manual/scripted cuts via `cut-release.sh` work today.)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

Similarly, adding hyperlinks to the relocated standards/canary-rings.json and the petry-projects/.github repository here improves readability and navigation, matching the document's established style of linking referenced resources.

Suggested change
> **Now registered in `standards/canary-rings.json`.** The promotion automation (`canary-rollout.sh`,
> #501) — relocated to `petry-projects/.github` under #613 — moves channel tags **cross-repo** via `gh api`
> ref updates on each agent's host repo (#1054), so the six reusables above are registered under the full
> `{next, ring0, ring1, stable}` model (#870). `feature-ideation` remains **absent** for now: its host + ring
> assignment aren't settled. (Manual/scripted cuts via `cut-release.sh` work today.)
> **Now registered in [`standards/canary-rings.json`](https://github.com/petry-projects/.github/blob/main/standards/canary-rings.json).** The promotion automation (`canary-rollout.sh`,
> #501) — relocated to [`petry-projects/.github`](https://github.com/petry-projects/.github) under #613 — moves channel tags **cross-repo** via `gh api`
> ref updates on each agent's host repo (#1054), so the six reusables above are registered under the full
> `{next, ring0, ring1, stable}` model (#870). `feature-ideation` remains **absent** for now: its host + ring
> assignment aren't settled. (Manual/scripted cuts via `cut-release.sh` work today.)

@don-petry don-petry added the ack-test-deletion Acknowledge intentional test deletion (bypasses test-deletion-guard) label Jul 9, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Removes the canary-rollout engine and repo-bootstrap/apply tooling from .github-private after they were relocated to petry-projects/.github, so this repo no longer carries duplicate implementations and the old scheduled workflow stops running here.

Changes:

  • Delete canary-rollout scripts, registry data (canary-rings.json), and the scheduled Canary Rollout workflow from this repo.
  • Delete bootstrap/apply scripts and their Bats test suites that were relocated to petry-projects/.github.
  • Update docs/release/versioning.md to point readers at the new canonical location and reflect the cross-repo promotion path.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
.github/workflows/canary-rollout.yml Removed scheduled canary-rollout workflow from this repo.
docs/bootstrap/new-repo-validation.md Removed bootstrap validation doc that moved to .github.
docs/initiatives/canary-rollout-adr.md Removed ADR document that moved to .github.
docs/release/versioning.md Updated documentation to reflect new location/behavior of the canary-rollout source of truth and automation.
scripts/apply-repo-settings.sh Removed relocated repo-settings applier script.
scripts/apply-rulesets.sh Removed relocated rulesets applier script.
scripts/bootstrap-new-repo.sh Removed relocated bootstrap orchestrator script.
scripts/canary-rollout.sh Removed relocated canary-rollout orchestrator.
scripts/lib/canary-rollout.sh Removed relocated pure decision-core library.
standards/canary-rings.json Removed relocated ring source-of-truth data file.
tests/canary_rollout.bats Removed relocated canary-rollout unit tests.
tests/test_apply_repo_settings.bats Removed relocated repo-settings test suite.
tests/test_apply_rulesets.bats Removed relocated rulesets test suite.
tests/test_bootstrap_new_repo.bats Removed relocated bootstrap test suite.

Comment on lines 69 to +71
fixes is never the unvalidated candidate (the circular-dependency fix #500 targets). The intended
machine-readable source of truth is `standards/canary-rings.json`, consumed by the promotion
automation (#501).
machine-readable source of truth is `standards/canary-rings.json`, now hosted in
`petry-projects/.github` and consumed by the promotion automation (#501, relocated there under #613).
Comment on lines +156 to +158
> **Now registered in `standards/canary-rings.json`.** The promotion automation (`canary-rollout.sh`,
> #501) — relocated to `petry-projects/.github` under #613 — moves channel tags **cross-repo** via `gh api`
> ref updates on each agent's host repo (#1054), so the six reusables above are registered under the full
@don-petry

Copy link
Copy Markdown
Collaborator Author

Dev-Lead — waiting on PR blockers (intent: review-changes)

PR: #1128
No changes were committed, but the PR still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews). The retry cron will re-attempt automatically. Next attempt after: 2026-07-09T03:38:15Z

@don-petry

Copy link
Copy Markdown
Collaborator Author

Note

@don-petry I reviewed this PR and no code changes were needed, but it still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews), so I cannot mark it done yet. I'll re-check automatically.
Next attempt after: 2026-07-09T03:38:15Z

@don-petry
don-petry enabled auto-merge (squash) July 9, 2026 03:08
@don-petry
don-petry merged commit 8e08322 into main Jul 9, 2026
50 of 60 checks passed
@don-petry
don-petry deleted the epic-613-cutover-remove-relocated branch July 9, 2026 03:09
don-petry added a commit to combsmith/.github that referenced this pull request Jul 9, 2026
PR-C2 of the epic #613 cutover. Re-enables the 4-hourly `schedule:` on the
relocated canary-rollout workflow (shipped disabled in #624), making .github the
live host for autocut → promote-all → sync-issues.

MUST land AFTER combsmith/.github-private#1128 (which deletes the engine +
workflow there, stopping that repo's schedule). Both CANARY_AUTO_CUT and
CANARY_AUTO_PROMOTE are 'true', so the two schedules must never overlap — this is
sequenced strictly after the .github-private removal merges.

Live-validated already: workflow_dispatch evaluate run 28990172900 in .github
minted the release-manager App token, resolved cross-repo dev-lead channel tags on
.github-private, and computed the #548 gate — confirming the engine runs correctly
from its new home.

Refs #613

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 2, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 3, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 3, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 3, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 7, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 8, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 8, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 8, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 8, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
don-petry added a commit that referenced this pull request Aug 18, 2026
…in .github) (#1128)

PR-C1 of the epic #613 cutover. The canary-rollout engine + repo-bootstrap tooling
were relocated to petry-projects/.github (PR .github#624, merged) and live-validated
there. Remove the now-duplicate copies from this repo so .github is the single home.

Deleted (relocated to .github):
  - scripts/canary-rollout.sh, scripts/lib/canary-rollout.sh, tests/canary_rollout.bats
  - scripts/bootstrap-new-repo.sh, tests/test_bootstrap_new_repo.bats
  - scripts/apply-rulesets.sh (+ tests/test_apply_rulesets.bats)
  - scripts/apply-repo-settings.sh (+ tests/test_apply_repo_settings.bats)
  - standards/canary-rings.json
  - .github/workflows/canary-rollout.yml  ← stops this repo's 4h schedule
  - docs/bootstrap/new-repo-validation.md, docs/initiatives/canary-rollout-adr.md

KEPT (deliberately — NOT true duplicates):
  - scripts/lib/push-protection.sh — sourced locally by scripts/aw-standards-sync.sh
    (this repo's minimal PP_REQUIRED_SA_SETTINGS lib; .github's same-named file is a
    larger superset for its own apply/audit). De-duping it would require refactoring
    aw-standards-sync.sh's sourcing — out of scope for the cutover.
  - docs/release/versioning.md — a broad release doc for THIS repo (referenced by
    cut-release.sh, runbook.md, AGENTS.md, feature-ideation). Its moved-file references
    (canary-rollout.sh, canary-rings.json) are repointed to petry-projects/.github and
    the stale "not yet cross-repo" blockquote refreshed to current behaviour.

Sequencing: this lands FIRST (stops this repo's schedule). .github#624's workflow —
currently shipped disabled — has its schedule re-enabled in the companion PR-C2 only
after this merges, so the two engines never run the mutating (autocut/promote-all)
schedule simultaneously.

Refs #613

Co-authored-by: donpetry-bot <{}+donpetry-bot@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ack-test-deletion Acknowledge intentional test deletion (bypasses test-deletion-guard)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants