Skip to content

Future: Formal \squad migrate\ command (informed by PR #199) #231

Closed

Description

@bradygaster

Context:
PR #199 by @williamhallatt proposed a comprehensive \squad migrate\ command for v0.5.x → v0.8.x migrations. The PR was closed as feedback for a future release, but it contains valuable patterns worth capturing.

Key Patterns from PR #199 to revisit:

  • --dry-run flag — migration preview without side effects
  • --backup-dir flag — safety checkpoint before migration
  • --restore flag — rollback capability
  • 57-test suite — reference model for migration test coverage (backup/restore validation, error handling, edge cases)
  • cli-entry.ts regressions (4 fixes found during PR review):
    • Bare semver output (version number without 'squad v' wrapper)
    • Whitespace arg handling
    • Doctor hint display
    • NODE_NO_WARNINGS env var handling

Current Migration Infrastructure (as of v0.8.21-preview.3):

  • migrate-directory.ts: 82 lines, handles .ai-team → .squad rename
  • migrations.ts: 94 lines, version-based additive runner
  • --migrate-directory flag on upgrade command

Next Steps:

  1. Decide on formal \squad migrate\ CLI command signature
  2. Reference PR fix(migrate): automated migration experience for v0.5.4 → v0.8.x #199's test patterns for migration safety validation
  3. Fix the 4 cli-entry.ts regressions independently
  4. Plan migration UX for v1.0 release window

Related: Closes after PR #199 (closed as feedback)

Activity

  1. bradygaster commented on Mar 7, 2026

    @bradygaster
    CollaboratorAuthor

    ✅ CLOSED: Duplicate of #250 (migrate command). Work tracked in that issue instead.

  2. added a commit that references this issue on Mar 9, 2026
    47aa1bb
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions