Skip to content

Feature/orch supervision - #65

Merged
abhishek-anand merged 5 commits into
mainfrom
feature/orch-supervision
Aug 15, 2026
Merged

Feature/orch supervision#65
abhishek-anand merged 5 commits into
mainfrom
feature/orch-supervision

Conversation

@abhishek-anand

Copy link
Copy Markdown
Contributor

Summary

Checklist

  • For each workspace you touched (vmm/, orch/, proto/): cargo fmt --all -- --check, cargo clippy --workspace --all-targets -- -D warnings, and
    cargo test --workspace pass locally.
  • For changes to boot, devices, memory, snapshot/restore, net, or the
    jailer, review the protected-main KVM workflow after merge (or manually
    dispatch it from main). Privileged self-hosted runners never execute
    pull-request refs.
  • Startup-path changes report cold, snapshot restore, suspend/resume, and
    warm-pool latency through the first successful guest exec, with explicit
    median/p95/p99 and success-rate gates.
  • Wire-protocol changes were made in proto/ only (not copied into vmm/ or
    orch/), if this changes requests, responses, config, VM status, or PTY
    frames.
  • No breaking change to the stable control contract (vmm serve --socket,
    ApiRequest/ApiResponse, length-prefixed JSON). If there is, it is called
    out above and versioned.
  • Every unsafe block has a // SAFETY: comment.
  • Docs updated if behavior or architecture changed.

Copilot AI lite review requested due to automatic review settings August 15, 2026 19:28
@cursor

cursor Bot commented Aug 15, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@abhishek-anand
abhishek-anand merged commit f349539 into main Aug 15, 2026
8 checks passed

Copilot AI 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.

Pull request overview

This PR improves snapshot-restore networking by switching taritd’s restore path to a typed VMM RPC for repairing guest networking, and enhances PTY WebSocket behavior to support reconnects while preventing concurrent attaches and ensuring sessions are cleaned up on VM teardown.

Changes:

  • Add and document the VMM repair_guest_network operation (including response type guest_network_repaired).
  • Update taritd restore supervision to call repair_guest_network instead of shelling out to guest ip configuration.
  • Make PTY sessions reconnectable for a bounded window, reject concurrent connects/deletes while connected, and reap PTY sessions when a VM stops/exits.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
vmm/docs/INTEGRATION.md Documents the new repair_guest_network request and intended usage after snapshot restore.
vmm/docs/BUILD-AND-API.md Adds API documentation for repair_guest_network and the guest_network_repaired response.
orch/README.md Clarifies PTY WebSocket single-active-connection behavior and reconnect semantics.
orch/docs/RESILIENCE.md Records PTY reconnect + VM cleanup resilience expectations.
orch/docs/QUICKSTART.md Updates PTY WebSocket token and reconnect documentation.
orch/docs/API.md Updates PTY WebSocket authentication and lifecycle semantics (reconnect window, 409 conflicts, teardown behavior).
orch/crates/taritd/src/supervisor.rs Switches restored guest network rebind to typed VMM repair_guest_network RPC and updates the corresponding test.
orch/crates/taritd/src/pty.rs Introduces reconnectable PTY sessions with single-active-connection enforcement, token TTL updates, and resize persistence.
orch/crates/taritd/src/ops.rs Ensures PTY sessions are removed when a VM stops or when an unexpected VMM exit is reconciled.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

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.

2 participants