Skip to content

Keep commands running across Hypeman reconnects - #7

Merged
rgarcia merged 3 commits into
mainfrom
hypeship/durable-hypeman-exec
Sep 1, 2026
Merged

Keep commands running across Hypeman reconnects#7
rgarcia merged 3 commits into
mainfrom
hypeship/durable-hypeman-exec

Conversation

@rgarcia

@rgarcia rgarcia commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add an opt-in DurableHypemanEnvironment that launches commands as detached jobs inside the VM
  • replace long-lived control-plane exec streams with short status polls that reconnect after transient interruptions
  • preserve command output, exit codes, timeouts, user/cwd/env handling, and cleanup while leaving the existing environment behavior unchanged

Why

Long-running agents currently depend on one WebSocket for their full execution. A temporary control-plane restart closes that stream even though the VM and command can continue running. Durable execution keeps command lifetime independent from the control connection.

Testing

  • uv run ruff format --check .
  • uv run ruff check .
  • uv run pytest -q
  • uv run ty check
  • uv build
  • real VM integration covering detached execution, simulated control interruption, reconnection, result collection, and deletion

Comment thread src/harbor_hypeman/environment.py
Comment thread src/harbor_hypeman/environment.py

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 812f758. Configure here.

Comment thread src/harbor_hypeman/environment.py
@rgarcia
rgarcia requested a review from bmsaadat September 1, 2026 19:56
@rgarcia
rgarcia merged commit 740fd4f into main Sep 1, 2026
2 checks passed
@rgarcia
rgarcia removed the request for review from bmsaadat September 1, 2026 20:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant