Some checks failed
Build & Sign Wraith / Build Windows + Sign (push) Has been cancelled
CLAUDE.md for future XOs: tech stack, architecture, commands, key design decisions, lineage from Go version. GO_MIGRATION.md: step-by-step checklist for deploying v2, archiving Go repo, configuring CI secrets, first release. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.0 KiB
2.0 KiB
Go → Rust Migration Checklist
Pre-Migration (Before Deploying Wraith v2)
- Test Wraith v2 on Windows — SSH to all 6 hosts, SFTP browse/upload/download, RDP to Hyper-V
- Verify vault creation + credential storage works
- Verify auto-updater finds releases
- Test code signing on installer
- Set up 6 connections manually (no import needed)
Migration Steps
1. Create Gitea Repo
# Create wraith repo on Gitea (or rename current wraith to wraith-go-legacy)
# Push wraith codebase
cd /path/to/wraith
git remote add origin ssh://git.command.vigilcyber.com:3021/vstockwell/wraith.git
git push -u origin main
2. Configure CI Secrets
Add these secrets to the wraith repo on Gitea:
AZURE_TENANT_IDAZURE_CLIENT_IDAZURE_CLIENT_SECRETAZURE_KEY_VAULT_URLAZURE_CERT_NAMEGIT_TOKENTAURI_SIGNING_PRIVATE_KEY(generate withnpx tauri signer generate)TAURI_SIGNING_PRIVATE_KEY_PASSWORD
3. First Release
git tag v1.0.0
git push origin v1.0.0
4. Uninstall Go Version
- Use a software uninstaller (the Go NSIS uninstaller is broken)
- Or manually delete:
C:\Program Files\Wraith\and%APPDATA%\Wraith\ - Note: deleting
%APPDATA%\Wraith\wraith.dbremoves Go version credentials (you're re-entering them anyway)
5. Archive Go Repository
On Gitea:
- Rename
wraithrepo towraith-go-legacy - Set repo to archived/read-only
- Rename
wraithtowraith - Update auto-updater endpoint in tauri.conf.json to new repo path
- Delete old Gitea packages (Go-built versions)
6. Clean Up Local
# Remove old Go repo (keep backup if desired)
mv ~/repos/wraith ~/repos/wraith-go-legacy-backup
mv ~/repos/wraith ~/repos/wraith
What Was NOT Migrated
| Component | Reason |
|---|---|
| AI Copilot (8 Go files + 4 Vue files) | Claude Code over SSH replaces this |
| MobaXTerm importer | 6 connections — entered by hand |
| Plugin system | Not needed |
| Go test suite (90 tests) | Replaced by 52 Rust tests |
| wraith.db data | Fresh vault, fresh credentials |