Skip to content

feat(zoo-migration): add final Roo-to-Zoo migration handoff flow#12266

Open
edelauna wants to merge 4 commits intoRooCodeInc:mainfrom
edelauna:feat-migration-to-zoo
Open

feat(zoo-migration): add final Roo-to-Zoo migration handoff flow#12266
edelauna wants to merge 4 commits intoRooCodeInc:mainfrom
edelauna:feat-migration-to-zoo

Conversation

@edelauna
Copy link
Copy Markdown

@edelauna edelauna commented May 4, 2026

Related GitHub Issue

Closes: #

Description

Adds the final Roo-to-Zoo migration handoff flow for the VS Code extension.

This PR adds:

  • A roo-cline.prepareZooMigration command that prepares a Zoo migration handoff bundle from Roo's local storage.
  • Copy-based migration output under Roo global storage, including settings and task history while leaving the original Roo folders untouched.
  • Explicit opt-in handling for provider profiles/API keys so secrets are only included when the user chooses to include them.
  • VS Code configuration export for every contributed roo-cline.* setting, with test coverage that keeps the migration list in sync with src/package.json.
  • A VS Code activation notification that surfaces the Zoo migration path on reload.
  • Zoo migration actions in the release announcement panel: Prepare Migration and Install Zoo.
  • Install Zoo targets the published ZooCodeOrganization.zoo-code extension ID and falls back to extension search if automatic install does not complete in the user's configured extension gallery.
  • Localized backend, command palette, and webview strings for all supported locales.
  • A 3.53.1 version/changelog update and a new announcement id so users who saw the previous announcement get the Zoo-focused one.

Reviewer focus areas:

  • Handoff schema/content in src/services/zoo-migration/ZooMigration.ts.
  • Secret opt-in behavior for provider profile export.
  • VS Code configuration export coverage for all contributed roo-cline.* settings.
  • Zoo install behavior for ZooCodeOrganization.zoo-code, including fallback search for editors/galleries where automatic install does not complete.
  • Notification behavior: it intentionally shows on extension activation/reload instead of being permanently dismissed.
  • Announcement copy and webview message handling for migration/install actions.

Test Procedure

Automated checks run locally:

node scripts/find-missing-translations.js
pnpm --dir src check-types
pnpm --dir src exec vitest run services/zoo-migration/__tests__/ZooMigration.spec.ts
pnpm vitest run src/components/chat/__tests__/Announcement.spec.tsx

Manual verification:

  • Reload the Roo extension and confirm the Zoo migration notification appears.
roo-to-zoo
  • Run Roo Code: Prepare Zoo Migration from the command palette.
  • Verify Roo prompts before including API keys.
roo-to-zoo-prompt
  • Confirm the generated zoo-migration/handoff-v1.json exists under Roo global storage and points at copied data/settings and data/tasks folders.
roo-to-zoo-handoff
  • Open the release announcement panel and confirm the Zoo migration copy plus Prepare Migration / Install Zoo buttons are present.
roo-to-zoo-chat
  • Click Install Zoo and confirm it attempts to install ZooCodeOrganization.zoo-code; if automatic install fails, confirm the Extensions view opens with that extension ID as the search query.

Pre-Submission Checklist

  • Issue Linked: This PR is linked to an approved GitHub Issue (see "Related GitHub Issue" above).
  • Scope: My changes are focused on the linked issue (one major feature/fix per PR).
  • Self-Review: I have performed a thorough self-review of my code.
  • Testing: New and/or updated tests have been added to cover my changes (if applicable).
  • Documentation Impact: I have considered if my changes require documentation updates (see "Documentation Updates" section below).
  • Contribution Guidelines: I have read and agree to the Contributor Guidelines.

Documentation Updates

  • No documentation updates are required for this PR beyond the changelog entry.

Additional Notes

The migration handoff is intentionally copy-based. Roo data remains in place so users can verify the handoff before installing or switching to Zoo Code.

The VS Code configuration export was audited against src/package.json; the migration spec now asserts that every contributed roo-cline.* setting is represented in the handoff.

Get in Touch

Discord:

Interactively review PR in Roo Code Cloud

Comment thread src/services/zoo-migration/ZooMigration.ts Outdated
Comment thread src/services/zoo-migration/ZooMigration.ts
@edelauna edelauna changed the title Feat migration to zoo feat(zoo-migration): add final Roo-to-Zoo migration handoff flow May 4, 2026
@edelauna edelauna force-pushed the feat-migration-to-zoo branch from 01bd318 to f61782e Compare May 9, 2026 01:43
@edelauna edelauna marked this pull request as ready for review May 9, 2026 01:46
@dosubot dosubot Bot added size:L This PR changes 100-499 lines, ignoring generated files. Enhancement New feature or request labels May 9, 2026
@hannesrudolph
Copy link
Copy Markdown
Collaborator

@roomote review this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhancement New feature or request size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants