Skip to content

ROCm/TheRock is production; Retire ROCm/ROCm; TheRock is now ROCm - #6949

Open
saadrahim wants to merge 4 commits into
mainfrom
users/saadrahim/rocm-legacy-repo-rfc
Open

ROCm/TheRock is production; Retire ROCm/ROCm; TheRock is now ROCm#6949
saadrahim wants to merge 4 commits into
mainfrom
users/saadrahim/rocm-legacy-repo-rfc

Conversation

@saadrahim

Copy link
Copy Markdown
Member

Motivation

RFC to discuss future of ROCm/ROCm repository.

Technical Details

Non technical

Test Plan

TBD

Test Result

NA

Submission Checklist

@therock-pr-bot

therock-pr-bot Bot commented Jul 28, 2026

Copy link
Copy Markdown

❌ PR Check — Action Required

Check Status Details
📝 PR Title/Description ❌ Fail Error: PR description must reference a JIRA ID, ISSUE ID, or a GitHub closing keyword.
Expected: include a JIRA ID / ISSUE ID line (separator : or -, or omitted; value may be a JIRA key, a number with/without #, or a link), OR a closing keyword + issue reference. Accepted examples:
JIRA ID : TESTAUTO-6039
JIRA ID - #330
JIRA ID #330
JIRA ID (on separate line)
ROCM-25757
ISSUE ID : TESTUTO-3334
ISSUE ID #3334
ISSUE ID - TESTAUTO-3433
ISSUE ID (on separate line)
AIRUNTIME-2352
ISSUE ID : https://github.com/<org_name>/<repo_name>/issues/1234
Closes #10
Fixes octo-org/octo-repo#100
Resolves: #123
#123
https://github.com/<org_name>/<repo_name>/issues/123
Current: no valid JIRA/ISSUE/closing-keyword reference found
Forbidden Files ✅ Pass
🧪 Unit Test ✅ Pass PR does not contain code files — Unit Test auto-passed
🔎 pre-commit ❌ Fail Error: Check concluded with failure.
🚫 Draft PR 🔜 To Be Enabled
🚩 Feature Flag 🔜 To Be Enabled
📊 Code Coverage 🔜 To Be Enabled

⚠️ 2 policy check(s) failed. Please address the issues above before this PR can be Reviewed.

🚫 Please fix the failed policies

  • ❌ PR Title/Description
  • ❌ pre-commit

The Not ready to Review label was added to this PR. Once all policies pass, the label is removed automatically.

📖 Need help? See the Policy FAQ for details on every check and how to fix failures.

@therock-pr-bot therock-pr-bot Bot added the Not ready to Review PR has unresolved policy failures — reviews blocked label Jul 28, 2026
@therock-pr-bot

Copy link
Copy Markdown

🚫 Please fix the failed policies before requesting reviews.

The following policy checks failed:

  • ❌ PR Title/Description

The Not ready to Review label has been added to this PR.
Once all policies pass, the label will be removed automatically.

@saadrahim saadrahim changed the title Create rocm-legacy-rfc.md ROCm/TheRock is production; Retire ROCm/ROCm; TheRock is now ROCm Jul 28, 2026

@marbre marbre left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This is a way larger churn then one initially thinks. We have cross-repository interaction via Quartz, authentication is based on the exact repo name, resources are explicitly registered to or enabled for the repository, not to mention docs. All this can of course be changed but it is not a simple rename in GitHub settings and rather real work which needs to be validated carefully to not break the entire system.

@saadrahim

Copy link
Copy Markdown
Member Author

This is a way larger churn then one initially thinks. We have cross-repository interaction via Quartz, authentication is based on the exact repo name, resources are explicitly registered to or enabled for the repository, not to mention docs. All this can of course be changed but it is not a simple rename in GitHub settings and rather real work which needs to be validated carefully to not break the entire system.

I was hoping that the GitHub redirection keeps everything working. This may be high cost request as you suggest I am wrong. Let's think about it.

@stellaraccident stellaraccident left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks. You may proceed to execute this at any time so long as you have @ScottTodd saying it is ok.

Comment thread docs/rfcs/rocm-legacy-rfc.md Outdated
- `ROCm/ROCm` — live repo (formerly TheRock).
- `ROCm/TheRock` → redirects to new `ROCm/ROCm` (**persists**).
- `ROCm/ROCm` → `rocm-legacy` redirect — **does not survive**.
- `rocm-legacy` — reachable only by explicit name; nothing redirects to it.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Call it legacy-rocm-build?

A name *swap* does not preserve both redirects. Renaming current `ROCm/ROCm` → `rocm-legacy` creates a `ROCm/ROCm` → `rocm-legacy` redirect, but then renaming TheRock *into* `ROCm/ROCm` puts a live repo on that path, which overrides (destroys) that redirect. End state:

- `ROCm/ROCm` — live repo (formerly TheRock).
- `ROCm/TheRock` → redirects to new `ROCm/ROCm` (**persists**).

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Let's do this carefully. I'm supportive but the DevOps team will need to do it at their leisure to avoid surprises at critical times. It's one of those things that should be fine but GH changes are test in prod, and need the owners to time it so that they can fix any issues.

@ScottTodd ScottTodd left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I can see ways we could pull this off, but I'm hesitant given:

  • TheRock as a project name has developed a following both within ROCm developers and some sections of the user community
  • It's useful to have a name for the build and CI system components that isn't just "ROCm"
  • The current https://github.com/ROCm/ROCm hosts policies that apply across the full project and github organization. Do we want to merge those with what exists here?

Comment thread docs/rfcs/rocm-legacy-rfc.md Outdated
Comment on lines +34 to +38
This is acceptable: old `ROCm/ROCm` links land on the new active repo. The one casualty is deep-links to legacy *file paths* (e.g. old `CHANGELOG.md`), which will 404 against the new tree — hence migrating legacy content into the new repo and linking `rocm-legacy` explicitly.

## Scope

**In scope:** the two renames; history-preserving migration of README content, `GOVERNANCE.md`, `CONTRIBUTING.md`, and relevant `docs/` into the new `ROCm/ROCm`; reconciling `CHANGELOG.md` into `RELEASES.md`; updating cross-links in other ROCm-org repos; issue-tracker cutover; a "moved" notice on `rocm-legacy`.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We currently have an organization-wide pull request template at https://github.com/ROCm/.github/blob/main/.github/pull_request_template.md with this content:

## Submission Checklist

- [ ] Look over the contributing guidelines at https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests.

That links to https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md#pull-requests, which would be replaced with https://github.com/ROCm/TheRock/blob/main/CONTRIBUTING.md after the repository renames.

I recently made some edits to the contributing guide in TheRock focused contributing to TheRock itself, so we'd want to re-evaluate that if we make this change. In particular:

  • The https://github.com/ROCm/ROCm/blob/develop/CONTRIBUTING.md page is written to apply to all projects (that don't have their own local contributing guide).
    • We could point to the file in this repository but lead with general guidance and then include TheRock-specific guidance.
    • We could add a new common CONTRIBUTING.md in https://github.com/ROCm/.github or other repository (rocm-legacy?) if we want a dedicated location for the "default" contributing guide
  • There is currently some stronger language for TheRock itself like "TheRock uses GitHub as the source of truth for all issue tracking, project planning, and code contributions." that while I'd like to apply to all of ROCm, that would be a larger discussion.

I'm also concerned about the "history-preserving migration of README content, GOVERNANCE.md, CONTRIBUTING.md" detail. How would that work? We currently have substantial content and history for README.md and CONTRIBUTING.md in this repository.

## Proposed Approach

1. **Audit** current `ROCm/ROCm` files; map each to a destination (merge / new / drop).
2. **Stage migration in TheRock first, with history** — use `git filter-repo` (or `subtree`) to import the selected docs paths with full commit history so `git log`/`blame` stay intact; reconcile `CHANGELOG.md` into `RELEASES.md`.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I don't think we should reconcile https://github.com/ROCm/ROCm/blob/develop/CHANGELOG.md into https://github.com/ROCm/TheRock/blob/main/RELEASES.md as the files have different purposes. We can add a new CHANGELOG.md as needed.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Agreed, will update.

6. **Issue cutover** — announce a date; triage/migrate open `rocm-legacy` issues; pin a notice.
7. **Communicate** — post plan/timeline in Discussions; 30-day notice before executing.

## Risks & Open Questions

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This is a way larger churn then one initially thinks. We have cross-repository interaction via Quartz, authentication is based on the exact repo name, resources are explicitly registered to or enabled for the repository, not to mention docs. All this can of course be changed but it is not a simple rename in GitHub settings and rather real work which needs to be validated carefully to not break the entire system.

I was hoping that the GitHub redirection keeps everything working. This may be high cost request as you suggest I am wrong. Let's think about it.

Yeah this will be tricky. The GitHub redirect is enough for some items but not all. I'm worried about the authentication for cloud project resources in particular. (That's solvable with a few minute-hours of poking settings in the cloud project(s), but it will be disruptive)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

My request is to do this someday in the next couple of quarters. Ideally during some quiet period. Maybe after the last ROCm release before the holidays.

With a lot of preplanning and testing. The name changes I am suggesting are entirely reversible in case things go wrong.


**Proposal:** swap the names so the canonical name follows the active repo.

1. Rename `ROCm/TheRock` → `ROCm/ROCm`.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I think there's still value in the "TheRock" name referring to the build and CI systems. How would we keep that with this repository rename?

A few spots where it is particularly relevant:

Brainstorming:

  • We could keep the name in all the places it currently exists, disambiguate in the repository README
  • We could rebrand as "ROCm CI", if that name carries enough meaning
  • Move sections of this repository to a TheRock / therock / the-rock subfolder

@saadrahim saadrahim Jul 29, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I think we keep TheRock as a name, similar to Bazel for PyTorch. I know the analogy is a bit of stretch but that's how I think of it.

I don't think we change any env vars or things tied to TheRock. TheRock still exists but refers to our build/CI system. We don't go stripping out every reference to it.

Comment on lines +69 to +74
## Alternatives Considered

- **Archive current `ROCm/ROCm`, keep TheRock's name** — leaves the best-known name dead and users still hunting for "TheRock." Rejected.
- **Deprecation banner only, no rename** — preserves the dual-source and naming ambiguity. Rejected.
- **Fold TheRock into current `ROCm/ROCm`** — rewrites the active repo's identity and disrupts its issues/discussions/RFC history. Rejected.
- **True git-history merge into a new repo** — needlessly disruptive; sacrifices the existing `ROCm/ROCm` name value. Rejected.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Here's another option: strip https://github.com/ROCm/ROCm down to just organization-wide / product-wide documentation and discussion. Keep https://github.com/ROCm/TheRock focused on the build system. That won't solve the problem of having two places to file issues, but I also sorta want to keep "why is this math library slow" style issues out of TheRock (direct people to rocm-libraries instead?)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

GitHub issues can be move between projects in an organization. I think we can teach the triage team move things that don't belong in ROCm/ROCm or ROCm/TheRock to rocm-libraries.

But I strongly believe that despite the cost of merging, we need only one top level repository for entry point for all.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Internal users and customers are getting very confused between our two entry points TheRock and ROCm.

@saadrahim
saadrahim requested a review from amd-aakash July 29, 2026 21:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Not ready to Review PR has unresolved policy failures — reviews blocked

Projects

Status: TODO

Development

Successfully merging this pull request may close these issues.

4 participants