feat: rename cua-train to cua-cloud in cyclops-cs and all usages#2026
feat: rename cua-train to cua-cloud in cyclops-cs and all usages#2026r33drichards wants to merge 2 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughThe PR renames the Python package and client from train to cloud, updates the release and version-bump workflows to use cloud tags and paths, and refreshes the README examples for the new package. ChangesCloud package rename and release automation
Sequence Diagram(s)sequenceDiagram
participant GitHub
participant "cd-py-cloud.yml"
participant "py-reusable-publish.yml"
participant "reusable GitHub release workflow"
GitHub->>cd-py-cloud.yml: trigger on refs/tags/cloud-v*
cd-py-cloud.yml->>cd-py-cloud.yml: parse cloud-v<semver>
cd-py-cloud.yml->>py-reusable-publish.yml: package_name=cloud, package_dir=libs/python/cua-cloud
cd-py-cloud.yml->>"reusable GitHub release workflow": tag cloud-v${version}, module_path=libs/python/cua-cloud
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
|
fix merge conflicts |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
.github/workflows/cd-py-cloud.yml (1)
37-42: 🔒 Security & Privacy | 🔵 Trivial | ⚡ Quick winAvoid interpolating
${{ github.ref }}directly into the run shell.The expression is expanded into the script before bash executes, so a maliciously crafted tag/ref can break out of the string and inject shell. Pass it through
envand reference the shell variable in the regex instead. zizmor flags this astemplate-injection.🔒 Proposed fix
- name: Determine version id: get-version + env: + GITHUB_REF_NAME_RAW: ${{ github.ref }} run: | if [ -n "${{ inputs.version }}" ]; then VERSION=${{ inputs.version }} elif [ "${{ github.event_name }}" == "push" ]; then - if [[ "${{ github.ref }}" =~ ^refs/tags/cloud-v([0-9]+\.[0-9]+\.[0-9]+) ]]; then + if [[ "$GITHUB_REF_NAME_RAW" =~ ^refs/tags/cloud-v([0-9]+\.[0-9]+\.[0-9]+) ]]; then VERSION=${BASH_REMATCH[1]} else echo "Invalid tag format for cloud" exit 1 fi🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In @.github/workflows/cd-py-cloud.yml around lines 37 - 42, The tag validation in the workflow script is vulnerable because github.ref is interpolated directly into the shell. Update the cloud version parsing step to pass github.ref through env in the job or step, then use the shell variable inside the regex check instead of embedding the expression in the run block. Keep the logic in the same tag-matching branch so VERSION is still extracted from the validated ref safely.Source: Linters/SAST tools
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In @.github/workflows/cd-py-cloud.yml:
- Around line 37-42: The tag validation in the workflow script is vulnerable
because github.ref is interpolated directly into the shell. Update the cloud
version parsing step to pass github.ref through env in the job or step, then use
the shell variable inside the regex check instead of embedding the expression in
the run block. Keep the logic in the same tag-matching branch so VERSION is
still extracted from the validated ref safely.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: a8e54241-3922-42f7-abd3-44085f677d69
📒 Files selected for processing (8)
.github/workflows/cd-py-cloud.yml.github/workflows/release-bump-version.ymllibs/python/cua-cloud/.bumpversion.cfglibs/python/cua-cloud/README.mdlibs/python/cua-cloud/pyproject.tomllibs/python/cua-cloud/src/cua_cloud/__init__.pylibs/python/cua-cloud/src/cua_cloud/client.pylibs/python/cua-train/src/cua_train/__init__.py
💤 Files with no reviewable changes (1)
- libs/python/cua-train/src/cua_train/init.py
cfc7738 to
5413126
Compare
CI / CodeRabbit Follow-upAddressed all feedback and resolved merge conflicts: CodeRabbit nitpick (security)
Merge conflict
Commits pushed:
|
Codecov ReportCaution This repository is currently using the Sentry GitHub App to receive Codecov PR comments. This integration will be deprecated on July 8, 2026. Please install the Codecov GitHub App to continue receiving coverage reports on your pull requests. 📢 Thoughts on this report? Let us know! |
5413126 to
9e0021d
Compare
|
No CodeRabbit review comments found on this PR. PR is ready for human review. 🟢 |
- Rename libs/python/cua-train/ → libs/python/cua-cloud/
- Rename src/cua_train/ → src/cua_cloud/ (Python package)
- Rename TrainClient → CloudClient in client.py and __init__.py
- Update pyproject.toml: name = 'cua-cloud', packages = ['src/cua_cloud']
- Update .bumpversion.cfg: tag_name = cloud-v{new_version}
- Update README.md: cua-cloud, pip install cua-cloud, CloudClient usage
- Rename .github/workflows/cd-py-train.yml → cd-py-cloud.yml
- Update workflow name, tag pattern (cloud-v*), package_name/dir/base_name
- Update .github/workflows/release-bump-version.yml:
- Replace pypi/train option with pypi/cloud
- Update directory mapping and version capture step
Closes CUA-647
9e0021d to
937ca12
Compare
Summary
Renames
cua-traintocua-cloudthroughout the repository, as per CUA-647.Context
cua cloudis considered a better name thancua traincua-trainPyPI stub exists today for packaging infrastructure, but the preferred product/package direction iscua cloudChanges
Package rename
libs/python/cua-train/→libs/python/cua-cloud/src/cua_train/→src/cua_cloud/Source code
TrainClient→CloudClientinclient.pyand__init__.pycua-traintocua-cloud__all__exportConfiguration
pyproject.toml:name = 'cua-cloud',packages = ['src/cua_cloud'].bumpversion.cfg:tag_name = cloud-v{new_version}, updated commit messageREADME.md: Updated install command, import, and usage examplesCI/CD
.github/workflows/cd-py-train.yml→cd-py-cloud.ymlcloud-v*),package_name,package_dir,base_package_name.github/workflows/release-bump-version.yml:pypi/trainoption withpypi/cloudlibs/python/cua-cloud)Closes CUA-647
Summary by CodeRabbit
New Features
Documentation
Chores