Repository navigation
refactor(managed-server): move orcad activation into src/main/managed-server/activation/ - #30320
Conversation
…-server/activation/ First slice of the desktop side of managed orcad leaving src/main/ssh. git mv plus import and path-literal rewrites; host-lane workflow filters and the cross-host prefix list gain the new folder.
📝 Walkthrough
Priority: ⬇️ Low Merge Risk: ⚪ Minimal · up to
|
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
- Configuration used: Repository UI
- Review profile: CHILL
- Plan: Advanced
- Run ID:
e5932fbf-e27f-49bf-a5d5-3f6df492fca9
📒 Files selected for processing: 100
.github/workflows/ssh-hostile-hosts.yml.github/workflows/ssh-windows-hosts.yml.github/workflows/wsl-orcad-e2e.ymlconfig/scripts/ci-shard-timings.jsonconfig/scripts/node-server-qualification.mjssrc/main/managed-server/activation/orcad-activation-crash-recovery.test.tssrc/main/managed-server/activation/orcad-activation-fence-generation.test.tssrc/main/managed-server/activation/orcad-activation-fence-hold.test.tssrc/main/managed-server/activation/orcad-activation-fence-hold.tssrc/main/managed-server/activation/orcad-activation-fence-scope.tssrc/main/managed-server/activation/orcad-activation-gate.test.tssrc/main/managed-server/activation/orcad-activation-gate.tssrc/main/managed-server/activation/orcad-activation-host-test-harness.tssrc/main/managed-server/activation/orcad-activation-lock.tssrc/main/managed-server/activation/orcad-activation-outcome-log.tssrc/main/managed-server/activation/orcad-activation-record-store.tssrc/main/managed-server/activation/orcad-activation-record.test.tssrc/main/managed-server/activation/orcad-activation-record.tssrc/main/managed-server/activation/orcad-activation-recovery.tssrc/main/managed-server/activation/orcad-activation-transaction-schema.tssrc/main/managed-server/activation/orcad-activation-transaction-store.tssrc/main/managed-server/activation/orcad-activation-transaction-transitions.tssrc/main/managed-server/activation/orcad-activation-transaction.test.tssrc/main/managed-server/activation/orcad-activation-transaction.tssrc/main/orcad/orcad-cross-runtime-daemon-adoption.integration.test.tssrc/main/ssh/managed-server-update-check.test.tssrc/main/ssh/managed-server-update-check.tssrc/main/ssh/orcad-active-readiness.tssrc/main/ssh/orcad-candidate-launch-verdict.tssrc/main/ssh/orcad-decommission-recovery.tssrc/main/ssh/orcad-decommission-released-peer-recovery.test.tssrc/main/ssh/orcad-decommission-transaction.test.tssrc/main/ssh/orcad-decommission-transaction.tssrc/main/ssh/orcad-exited-own-fence-mutation-race.test.tssrc/main/ssh/orcad-exited-own-fence.test.tssrc/main/ssh/orcad-exited-own-lock.tssrc/main/ssh/orcad-fence-lost-classification.test.tssrc/main/ssh/orcad-gc-transaction-pins.tssrc/main/ssh/orcad-host-version-admission.tssrc/main/ssh/orcad-incumbent-recovery.tssrc/main/ssh/orcad-installed-activation.tssrc/main/ssh/orcad-interrupted-candidate-resume.tssrc/main/ssh/orcad-machine-home.tssrc/main/ssh/orcad-managed-auto-update.test.tssrc/main/ssh/orcad-managed-auto-update.tssrc/main/ssh/orcad-managed-launch-session.test.tssrc/main/ssh/orcad-managed-launch-session.tssrc/main/ssh/orcad-managed-runtime-context.tssrc/main/ssh/orcad-managed-version-gc.test.tssrc/main/ssh/orcad-managed-version-gc.tssrc/main/ssh/orcad-managed-wake.test.tssrc/main/ssh/orcad-managed-wake.tssrc/main/ssh/orcad-recovery-slot.tssrc/main/ssh/orcad-remote-context.tssrc/main/ssh/orcad-remote-decommission.test.tssrc/main/ssh/orcad-remote-decommission.tssrc/main/ssh/orcad-remote-deploy.test.tssrc/main/ssh/orcad-remote-deploy.tssrc/main/ssh/orcad-remote-gc.test.tssrc/main/ssh/orcad-remote-gc.tssrc/main/ssh/orcad-remote-install.tssrc/main/ssh/orcad-remote-lifecycle-windows.test.tssrc/main/ssh/orcad-remote-primitives.test.tssrc/main/ssh/orcad-remote-rollback.test.tssrc/main/ssh/orcad-remote-rollback.tssrc/main/ssh/orcad-remote-runtime-control.tssrc/main/ssh/orcad-remote-windows-decommission.test.tssrc/main/ssh/orcad-remote-windows-node.tssrc/main/ssh/orcad-rollback-transition.tssrc/main/ssh/orcad-running-version-adoption.test.tssrc/main/ssh/orcad-running-version-adoption.tssrc/main/ssh/orcad-runtime-decommission.test.tssrc/main/ssh/orcad-runtime-decommission.tssrc/main/ssh/orcad-runtime-deployment.test.tssrc/main/ssh/orcad-runtime-deployment.tssrc/main/ssh/orcad-runtime-maintenance.test.tssrc/main/ssh/orcad-runtime-maintenance.tssrc/main/ssh/orcad-runtime-status.tssrc/main/ssh/orcad-state-mutation-exec.tssrc/main/ssh/orcad-state-mutation-fence-heartbeat.test.tssrc/main/ssh/orcad-state-mutation-timeout.test.tssrc/main/ssh/orcad-state-snapshot.tssrc/main/ssh/orcad-terminal-census-client.test.tssrc/main/ssh/orcad-terminal-census-client.tssrc/main/ssh/orcad-transaction-incumbent.tssrc/main/ssh/orcad-unreachable-setup-release.tssrc/main/ssh/orcad-unreachable-setup-stop.test.tssrc/main/ssh/orcad-update-plan.test.tssrc/main/ssh/orcad-update-plan.tssrc/main/ssh/orcad-windows-host-fence-ops.test.tssrc/main/ssh/orcad-windows-host-fence-ops.tssrc/main/ssh/orcad-windows-host-lane.test.tssrc/main/ssh/orcad-windows-host-state-ops.tssrc/main/ssh/ssh-host-server-on-connect-stopped-elsewhere.test.tssrc/main/ssh/ssh-hostile-host-managed-orcad.tssrc/main/wsl/wsl-orcad-deploy.test.tssrc/main/wsl/wsl-orcad-deploy.tssrc/main/wsl/wsl-orcad-incumbent.test.tssrc/main/wsl/wsl-orcad-instance-adoption.test.tssrc/main/wsl/wsl-orcad-instance-adoption.ts
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 3 remain after this review.
| "src/main/ssh/orcad-activation-outcome-log.test.ts": 40, | ||
| "src/main/ssh/orcad-activation-record.test.ts": 245, | ||
| "src/main/ssh/orcad-activation-transaction.test.ts": 451, | ||
| "src/main/managed-server/activation/orcad-activation-record.test.ts": 245, |
There was a problem hiding this comment.
🚀 Performance & Scalability | 🟡 Minor | ⚡ Quick win
🔎 Supported by static analysis
🏁 Script executed:
rg -n 'ci-shard-timings|shard-timings|timing.*shard|shard.*timing' config/scripts
git ls-tree -r --name-only 7b3d359851c00c567a73f48010934912a7998957 | rg 'orcad-activation-outcome-log\.test\.ts$' || true
git show 7b3d359851c00c567a73f48010934912a7998957:config/scripts/ci-shard-timings.json | sed -n '5588,5598p'Repository: stablyai/orca
Length of output: 3631
Remove the obsolete timing entry.
orcad-activation-outcome-log.test.ts is not tracked, so its timing entry cannot affect test discovery. However, the shard balancer reads all timing rows, including stale rows, and the repository explicitly states that stale rows skew shard balance until the timing file is regenerated. Remove the obsolete row.
Suggested fix
- "src/main/ssh/orcad-activation-outcome-log.test.ts": 40,
ELI5
About 190 files in
src/main/ssharen't SSH code. They're the desktop side of the managed Orca server (orcad) that runs on SSH and WSL hosts. This PR starts moving them into their own folder,src/main/managed-server/, beginning with the 19 activation files. Nothing the app does changes, and nothing on a host changes.What Changed
src/main/ssh/orcad-activation-*file and its tests, withgit mv, tosrc/main/managed-server/activation/. File names are unchanged.vi.mockpaths in 75 importers acrossssh,wslandorcad, plus theci-shard-timings.jsonkeys.ssh-hostile-hosts.ymlandssh-windows-hosts.ymladdsrc/main/managed-server/**. They used to catch these files throughsrc/main/ssh/orcad-*.wsl-orcad-e2e.ymladds the folder, plus its own!…/*.test.tsexclusion.node-server-qualification.mjs's cross-host prefixes addsrc/main/managed-server/.main/managed-server/.git diff -Mshows every moved file as a rename. Edits inside the moved files are only their../import depth.Why
This is round 2's folder plan (§4.2, M4; decision D8 names the folder
managed-server/).src/main/sshshould hold SSH transport only. M4 turned out to be about 190 files, not the roughly 80 the plan estimated, so it lands as four PRs, one per subfolder: activation, install, lifecycle, host-state. Each stays reviewable and conflicts less with other open work.Linked Issue
N/A (SSH hardening round 2, S11/M4).
Visual Proof
N/A: a pure file move.
Testing
typecheck:ci: clean.src/main/managed-server, everysrc/main/ssh/orcad-*,managed-server-*,ssh-host-server-on-connect*,ssh-hostile*,src/main/wsl,src/main/orcad, and the orcad e2e change-scope and node-server tests. That is 257 files and 2,648 tests.orcad-forked-child-pathscases, which fail on main on macOS too, because of the/private/vartmpdir realpath.