Skip to content

Migrate label automation - #2042

Merged
syntactically merged 14 commits into
mainfrom
yoshuawuyts-structured-label-migration
Nov 12, 2026
Merged

syntactically merged 14 commits into
mainfrom
yoshuawuyts-structured-label-migration

Conversation

@yoshuawuyts

Copy link
Copy Markdown
Contributor

This migrates all label-related automation to the new labeling scheme. Thanks!

@yoshuawuyts
yoshuawuyts added this pull request to stack #2011 November 10, 2026 13:27
@yoshuawuyts yoshuawuyts added A-infra Concerns infrastructure rather than core functionality C-refactor For PRs that restructure or remove code without adding new functionality. labels Nov 10, 2026
@yoshuawuyts

Copy link
Copy Markdown
Contributor Author

CI is failing because we haven't yet migrated to the new C--based labels, which this PR now expects. That means we need to apply the migration before we can merge this.

@hyperlight-gh-bot

This comment has been minimized.

ludfjig
ludfjig previously approved these changes Nov 10, 2026
Base automatically changed from yoshuawuyts-structured-label-usage-guide to main November 12, 2026 14:02
yoshuawuyts and others added 13 commits November 12, 2026 15:03
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Yosh <github@yosh.is>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@yoshuawuyts
yoshuawuyts force-pushed the yoshuawuyts-structured-label-migration branch from e31f067 to a96eac1 Compare November 12, 2026 14:03
Copilot AI balanced review requested due to automatic review settings November 12, 2026 14:03

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

The label check accepts C-question via ^C-, allowing PRs to pass without one of the four change-category labels required for merging.

1 open issue
What changed in this PR

This PR aligns Hyperlight’s label automation and contributor documentation with the structured labeling scheme.

Changes:

  • Uses structured labels for CI failure reports, release blockers, snapshot goldens, and dependency updates.
  • Updates PR category checks and review-status handling. Issues receive S-needs-triage only when no status label exists.
  • Aligns release and snapshot documentation with the label names.
File Description
Justfile Updates goldens label comments and diagnostics.
docs/​snapshot-versioning.md Documents S-needs-goldens usage.
docs/​how-to-make-releases.md Updates release-blocker guidance and search link.
dev/​notify-ci-failure.sh Updates default labels and examples.
dev/​check-release-blockers.sh Queries P-release-blocker issues.
.github/​workflows/​WeeklyMshv618.yml Updates weekly MSHV failure labels.
.github/​workflows/​ValidatePullRequest.yml Detects and validates S-needs-goldens.
.github/​workflows/​RustNightly.yml Updates nightly failure labels.
.github/​workflows/​ReleaseBlockerLabelCleanUp.yml Removes P-release-blocker from closed issues.
.github/​workflows/​ReleaseBlockerCheck.yml Updates the release-blocker error message.
.github/​workflows/​ready-for-review-manage.yml Passes S-needs-review to the shared workflow.
.github/​workflows/​ready-for-review-label.yml Updates the pipeline’s label comment.
.github/​workflows/​PRLabelChecker.yml Checks for one C- category label.
.github/​workflows/​IssueLabelChecker.yml Preserves statuses and labels untriaged issues.
.github/​workflows/​Fuzzing.yml Updates fuzzing failure labels.
.github/​workflows/​DailyBenchmarks.yml Uses A-perf and structured failure labels.
.github/​workflows/​DailyArm64.yml Updates ARM64 failure labels and grouping comments.
.github/​workflows/​Coverage.yml Updates coverage failure labels.
.github/​release.yml Groups dependency changes under C-deps.
.github/​ISSUE_TEMPLATE/​bug.md Applies C-bug to bug reports.
.github/​dependabot.yml Uses C-deps and removes the guest-area label.

Review effort: Balanced

Comment thread .github/workflows/PRLabelChecker.yml Resolved
@hyperlight-gh-bot

Copy link
Copy Markdown

Benchmark Results

Measured commit: a96eac1c6fcc
Baseline commit: d8bb96fe7a9d

kvm / amd (Linux) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

encode_control decode_vec_bytes_copy
byte_chunks 768.96 ns (➖ 1.01x slower)
vec_bytes 583.25 ns (➖ 1.01x faster)
373.46 µs (➖ 1.00x faster)

payload_allocation

slot_pool_segmented
262144 521.52 ns (➖ 1.01x faster)
65536 143.27 ns (➖ 1.01x slower)

sandboxes

create_initialized_and_drop
medium 12.96 ms (➖ 1.04x faster)

slot_pool

alloc_dealloc_128 alloc_dealloc_4096 alloc_dealloc_1500
7.68 ns (➖ 1.42x faster) 7.68 ns (➖ 1.00x faster) 7.68 ns (➖ 1.00x faster)

snapshot_files

load_snapshot_unverified
small 99.69 µs (➖ 1.02x slower)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
262144 9.24 µs (➖ 1.25x slower) 7.24 µs (➖ 1.02x slower)
65536 1.92 µs (➖ 1.08x faster) 2.05 µs (➖ 1.07x slower)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
262144 26.75 µs (➖ 1.01x faster)
65536 6.19 µs (➖ 1.01x faster) 6.18 µs (➖ 1.05x faster)
8192 1.02 µs (➖ 1.02x slower) 1.11 µs (➖ 1.11x slower)
kvm / intel (Linux) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

encode_control decode_vec_bytes_copy
byte_chunks 816.62 ns (➖ 1.00x slower)
vec_bytes 611.60 ns (➖ 1.02x faster)
744.43 µs (➖ 1.02x faster)

payload_allocation

slot_pool_segmented
262144 595.06 ns (➖ 1.00x faster)
65536 205.47 ns (➖ 1.02x slower)

sandboxes

create_initialized_and_drop
medium 15.12 ms (➖ 1.03x slower)

slot_pool

alloc_dealloc_128 alloc_dealloc_4096 alloc_dealloc_1500
8.18 ns (➖ 1.01x slower) 8.21 ns (➖ 1.01x slower) 8.15 ns (➖ 1.00x faster)

snapshot_files

load_snapshot_unverified
small 57.43 µs (➖ 1.00x slower)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
262144 9.08 µs (➖ 1.01x slower) 9.03 µs (➖ 1.00x faster)
65536 2.56 µs (➖ 1.01x slower) 2.54 µs (➖ 1.01x faster)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
262144 36.08 µs (➖ 1.01x slower)
65536 8.43 µs (➖ 1.02x faster) 8.54 µs (➖ 1.00x faster)
8192 848.32 ns (➖ 1.01x faster) 880.39 ns (➖ 1.00x slower)
mshv3 / amd (Linux) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

encode_control decode_vec_bytes_copy
byte_chunks 1.01 µs (➖ 1.05x slower)
vec_bytes 723.09 ns (➖ 1.00x slower)
271.12 µs (➖ 1.30x faster)

payload_allocation

slot_pool_segmented
262144 728.70 ns (➖ 1.00x faster)
65536 192.76 ns (➖ 1.00x faster)

sandboxes

create_initialized_and_drop
medium 67.08 ms (➖ 1.21x slower)

slot_pool

alloc_dealloc_128 alloc_dealloc_4096 alloc_dealloc_1500
9.52 ns (➖ 1.02x faster) 9.52 ns (➖ 1.01x faster) 9.64 ns (➖ 1.00x slower)

snapshot_files

load_snapshot_unverified
small 104.96 µs (➖ 1.01x faster)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
262144 10.06 µs (➖ 1.06x slower) 9.98 µs (➖ 1.06x faster)
65536 2.24 µs (➖ 1.01x slower) 2.36 µs (➖ 1.04x faster)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
262144 35.36 µs (➖ 1.08x faster)
65536 8.25 µs (➖ 1.19x faster) 8.46 µs (➖ 1.13x faster)
8192 1.29 µs (➖ 1.05x slower) 1.22 µs (➖ 1.07x faster)
mshv3 / intel (Linux) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

encode_control decode_vec_bytes_copy
byte_chunks 924.15 ns (➖ 1.04x faster)
vec_bytes 670.28 ns (➖ 1.03x slower)
817.06 µs (➖ 1.12x slower)

payload_allocation

slot_pool_segmented
262144 1.11 µs (➖ 1.49x slower)
65536 216.53 ns (➖ 1.23x faster)

sandboxes

create_initialized_and_drop
medium 82.04 ms (➖ 1.00x faster)

slot_pool

alloc_dealloc_128 alloc_dealloc_4096 alloc_dealloc_1500
8.73 ns (➖ 1.02x faster) 8.70 ns (➖ 1.01x faster) 8.72 ns (➖ 1.01x faster)

snapshot_files

load_snapshot_unverified
small 59.01 µs (➖ 1.02x slower)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
262144 7.97 µs (➖ 1.01x slower) 8.04 µs (➖ 1.00x slower)
65536 2.29 µs (➖ 1.01x slower) 2.27 µs (➖ 1.00x faster)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
262144 39.59 µs (➖ 1.01x faster)
65536 7.57 µs (➖ 1.01x faster) 7.71 µs (➖ 1.01x slower)
8192 921.12 ns (➖ 1.01x faster) 901.16 ns (➖ 1.01x faster)
hyperv-ws2025 / amd (Windows) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

encode_control decode_vec_bytes_copy
byte_chunks 1.13 µs (➖ 1.03x faster)
vec_bytes 765.31 ns (➖ 1.01x slower)
1.91 ms (➖ 1.00x faster)

payload_allocation

slot_pool_segmented
262144 817.36 ns (➖ 1.03x slower)
65536 235.11 ns (➖ 1.02x slower)

sandboxes

create_initialized_and_drop
medium 13.86 ms (➖ 1.02x slower)

slot_pool

alloc_dealloc_128 alloc_dealloc_4096 alloc_dealloc_1500
10.97 ns (➖ 1.04x slower) 10.60 ns (➖ 1.00x slower) 10.63 ns (➖ 1.00x slower)

snapshot_files

load_snapshot_unverified
small 730.32 µs (➖ 1.12x slower)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
262144 8.88 µs (➖ 1.02x slower) 8.99 µs (➖ 1.04x slower)
65536 2.56 µs (➖ 1.02x slower) 2.57 µs (➖ 1.01x slower)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
262144 39.54 µs (➖ 1.03x slower)
65536 8.54 µs (➖ 1.11x faster) 8.68 µs (➖ 1.00x slower)
8192 1.33 µs (➖ 1.06x faster) 1.34 µs (➖ 1.02x faster)
hyperv-ws2025 / intel (Windows) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

encode_control decode_vec_bytes_copy
byte_chunks 1.29 µs (➖ 1.04x slower)
vec_bytes 791.38 ns (➖ 1.00x faster)
3.01 ms (➖ 1.01x slower)

payload_allocation

slot_pool_segmented
262144 754.81 ns (➖ 1.02x slower)
65536 210.79 ns (➖ 1.01x slower)

sandboxes

create_initialized_and_drop
medium 14.33 ms (➖ 1.01x faster)

slot_pool

alloc_dealloc_128 alloc_dealloc_4096 alloc_dealloc_1500
9.74 ns (➖ 1.00x slower) 9.89 ns (➖ 1.02x faster) 9.71 ns (➖ 1.01x slower)

snapshot_files

load_snapshot_unverified
small 673.58 µs (➖ 1.00x slower)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
262144 7.50 µs (➖ 1.03x faster) 7.47 µs (➖ 1.00x faster)
65536 2.42 µs (➖ 1.04x slower) 2.27 µs (➖ 1.01x slower)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
262144 42.47 µs (➖ 1.02x slower)
65536 8.92 µs (➖ 1.04x slower) 8.32 µs (➖ 1.01x faster)
8192 1.06 µs (➖ 1.11x faster) 1.10 µs (➖ 1.01x faster)

Reported by cargo ci bench-report --candidate run:43233287715 --config-file bench_report.toml.

@syntactically
syntactically merged commit 1afa48e into main Nov 12, 2026
72 checks passed
@syntactically
syntactically deleted the yoshuawuyts-structured-label-migration branch November 12, 2026 14:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-infra Concerns infrastructure rather than core functionality C-refactor For PRs that restructure or remove code without adding new functionality.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants