Skip to content

[CI VALIDATION — do not merge] full agent/supervisor boundary stack (#986+#988+#989+#990)#991

Closed
odesenfans wants to merge 1 commit into
devfrom
od/supervisor-vm-id-rename-impl
Closed

[CI VALIDATION — do not merge] full agent/supervisor boundary stack (#986+#988+#989+#990)#991
odesenfans wants to merge 1 commit into
devfrom
od/supervisor-vm-id-rename-impl

Conversation

@odesenfans

Copy link
Copy Markdown
Contributor

Purpose: run GitHub CI on the combined boundary stack

This branch is the tip of the stacked PRs dev ← #986 (PR-1) ← #988 (PR-3) ← #989 (PR-2) ← #990 (PR-0), so its diff against dev is the complete merged result of all four boundary PRs.

The per-PR CI workflows only trigger on PRs against main/dev, so the stacked PRs (#988/#989/#990, based on feature branches) get no automated CI until their bases merge. This draft, do-not-merge PR exists only to run the full CI suite (pytest + mypy + import-boundary + droplet integration + package builds) on the combined result and surface any cross-PR / integration issue the local per-component runs can't.

Do NOT merge this — it would squash all four PRs into one and lose the reviewable stack. Merge the individual PRs in order: #986#988#989#990. Close this once they're merged.

Local verification across the stack: 930 unit tests pass (3 env-only test_interfaces pyroute2/root failures excepted), mypy at baseline, import-linter 4 kept / 0 broken.

🤖 Generated with Claude Code

@odesenfans odesenfans force-pushed the od/supervisor-vm-id-rename-impl branch from 1ae2abe to 2199073 Compare June 19, 2026 11:23
@codecov

codecov Bot commented Jun 19, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 65.13761% with 76 lines in your changes missing coverage. Please review.
✅ Project coverage is 79.62%. Comparing base (78536c3) to head (79dff22).

Files with missing lines Patch % Lines
src/aleph/vm/pool.py 53.94% 33 Missing and 2 partials ⚠️
src/aleph/vm/hypervisors/firecracker/microvm.py 20.00% 8 Missing ⚠️
src/aleph/vm/models.py 60.00% 6 Missing ⚠️
...m/supervisor/controllers/firecracker/executable.py 25.00% 6 Missing ⚠️
src/aleph/vm/supervisor/local.py 70.00% 3 Missing and 3 partials ⚠️
src/aleph/vm/network/firewall.py 76.19% 5 Missing ⚠️
src/aleph/vm/migration/helpers.py 0.00% 3 Missing ⚠️
src/aleph/vm/network/hostnetwork.py 80.00% 1 Missing and 1 partial ⚠️
...c/aleph/vm/supervisor/controllers/qemu/instance.py 60.00% 2 Missing ⚠️
...pervisor/controllers/qemu_confidential/instance.py 50.00% 2 Missing ⚠️
... and 1 more
Additional details and impacted files
@@           Coverage Diff           @@
##              dev     #991   +/-   ##
=======================================
  Coverage   79.62%   79.62%           
=======================================
  Files         208      208           
  Lines       22920    22920           
  Branches     1460     1460           
=======================================
+ Hits        18249    18251    +2     
+ Misses       4293     4292    -1     
+ Partials      378      377    -1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Behaviour-neutral identifier rename so the supervisor objects say what they
mean (design: docs/plans/2026-06-19-supervisor-vm-id-rename-design.md).

Two axes:
- numeric local VM id 'vm_id: int' -> 'vm_index' (MicroVM, VmExecution.vm_index
  property + create(), network/, hypervisors/, controllers, get_unique_vm_index).
- string identity 'vm_hash' -> 'vm_id' on the supervisor objects (VmExecution,
  VmPool keys/params, LocalSupervisor) and agent reads of that attribute
  (run/custom_logs/tasks/migration).

Left unchanged: the controller's own 'vm_hash: ItemHash' param, the serialized
Configuration.vm_id(int)/vm_hash(str) fields and the '"vm_id"'/'"vm_hash"'
recreate-dict string keys, the wire CreateVmSpec.vm_id/VmInfo.vm_id, and genuine
ItemHash locals.

Verified: mypy unchanged at baseline (43/13); full supervisor+migration+network
suite green (3 env-only test_interfaces pyroute2/root failures excepted);
import-linter 4 kept/0 broken; grep sweep clean (no execution.vm_hash).
@odesenfans odesenfans force-pushed the od/supervisor-vm-id-rename-impl branch from 2199073 to 79dff22 Compare June 19, 2026 22:50
@odesenfans

Copy link
Copy Markdown
Contributor Author

Closing the CI-validation scaffold: #986/#988/#989 are merged to dev and #990 (PR-0) is retargeted directly onto dev for its own CI. This draft was never meant to merge.

@odesenfans odesenfans closed this Jun 19, 2026
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