summaryrefslogtreecommitdiff
path: root/lib/hyperstack/wireguard_setup.rb
AgeCommit message (Collapse)Author
2026-05-25fix(prefixed_output): add flush to prevent losing final unterminated linePaul Buetow
PrefixedOutput#print buffers partial lines until a newline is received. When the last chunk from a stream does not end with \n (common with Open3 popen2e EOF), that chunk was discarded. Add #flush to emit the remaining buffer with the prefix, and call it at the end of all streaming loops in SshRunner and WireGuardSetup.
2026-05-25refactor(manager): extract focused collaborators from Manager God ClassPaul Buetow
Extract VM lifecycle, SSH execution, WireGuard setup, model switching, end-to-end inference tests, and provisioning orchestration into separate collaborator classes. Manager becomes a thin facade (~80 lines). Also fixes CLI edge-cases: status/model-list when no VMs are active, and threads --vllm/--ollama flags through the provisioning pipeline.