Skip to content

chore(rt): address review nits from #1968 and #1974 - #1992

Merged
Frostman merged 1 commit into
masterfrom
ema/post-merge-nits
Aug 31, 2026
Merged

chore(rt): address review nits from #1968 and #1974#1992
Frostman merged 1 commit into
masterfrom
ema/post-merge-nits

Conversation

@edipascale

Copy link
Copy Markdown
Contributor

Follow-ups to comments that were marked addressed but were not:

  • record that the proto-port probe semaphore only covers its own phase, since the server-to-server phase keeps pinging concurrently
  • release that semaphore via defer, so a future early exit between the acquire and the release cannot stall the phase on its single slot
  • fail loudly when a NAT test finds no servers to probe: an empty source list reads as "no filter" downstream and probes the whole matrix
  • run Gateway Peering Overlap NAT last in the gateway NAT/ACL suite; it creates an IPv4Namespace and a VPC and re-attaches a server, and without a wipe between tests the rest of the suite inherits whatever its reverts miss
  • fix the -D -O ping fixture timestamps, which were non-monotonic and duplicated

@edipascale
edipascale requested review from a team as code owners August 17, 2026 08:29
@edipascale edipascale added the ci:+release Enable VLAB release tests label Aug 17, 2026
@edipascale edipascale self-assigned this Aug 17, 2026
@coderabbitai

coderabbitai Bot commented Aug 17, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: ff7c4e48-60ad-4b1a-9301-60419308da03

📥 Commits

Reviewing files that changed from the base of the PR and between c4d9ba7 and 5e8adcb.

📒 Files selected for processing (4)
  • pkg/hhfab/matrix.go
  • pkg/hhfab/rt_gw_nat_acl_suite.go
  • pkg/hhfab/rt_nat_tests.go
  • pkg/hhfab/testing_test.go

Included review availability: 3 reviews are currently available. Based on recent review activity, included reviews refill at 5 per hour.


📝 Walkthrough

Walkthrough

Changes

Probe and NAT testing

Layer / File(s) Summary
Probe dispatch semaphore cleanup
pkg/hhfab/matrix.go
The proto-port semaphore now releases through deferred cleanup for all protocol outcomes. Its documentation distinguishes proto-port probes from concurrent server-to-server probes.
NAT test selection and gateway suite ordering
pkg/hhfab/rt_nat_tests.go, pkg/hhfab/rt_gw_nat_acl_suite.go
NAT tests now fail when no probe servers exist. Probe selection comments define outside-VPC and shared-server handling. Gateway peering overlap NAT runs separately at the end of the gateway suite.
Ping fixture alignment
pkg/hhfab/testing_test.go
The middleLostReported fixture uses timestamped replies for ICMP sequences 4 and 5.

Possibly related PRs

Suggested reviewers: frostman, pau-hedgehog

Merge Risk: ⚪ Minimal · up to 5e8ad

The PR is merge-ready after normal checks and review; no actionable merge-blocking risk remains.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the changes as follow-up review fixes for the referenced runtime pull requests.
Description check ✅ Passed The description directly explains each follow-up fix implemented in the changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Aug 17, 2026

Copy link
Copy Markdown

Release Tests

  8 files   -  1   40 suites   - 5   3h 4m 30s ⏱️ - 1h 24m 58s
 58 tests ± 0   41 ✅  - 15   17 💤 +15  0 ❌ ±0 
464 runs   - 58  201 ✅  - 55  263 💤  -  3  0 ❌ ±0 

Results for commit 6711e57. ± Comparison against base commit 58a74b0.

♻️ This comment has been updated with latest results.

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

Follow-up cleanup to the hhfab runtime connectivity/NAT test harness to ensure probes are correctly scoped/serialized, test selection order avoids state leakage, and fixtures reflect the ping output formats the probes now parse.

Changes:

  • Make proto-port probe semaphore usage explicit and safer (release via defer within the proto-port probe scope).
  • Make NAT tests fail loudly when no probe servers are found (preventing unintended “probe everything” behavior).
  • Reorder “Gateway Peering Overlap NAT” to run last in the Gateway NAT/ACL suite and fix ping fixture timestamps for -D -O output.

Reviewed changes

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

File Description
pkg/hhfab/testing_test.go Fixes ping -D -O fixture timestamps to be monotonic/unique to match real output expectations.
pkg/hhfab/rt_nat_tests.go Adds an explicit error when probe sources are empty; clarifies probe-server selection behavior; removes overlap test from the general NAT list.
pkg/hhfab/rt_gw_nat_acl_suite.go Appends “Gateway Peering Overlap NAT” last to reduce cross-test state contamination in the suite.
pkg/hhfab/matrix.go Clarifies probe semaphore scope and releases the semaphore via defer to prevent stalls on early exits.

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

Follow-ups to comments that were marked addressed but were not:

- record that the proto-port probe semaphore only covers its own phase,
  since the server-to-server phase keeps pinging concurrently
- release that semaphore via defer, so a future early exit between the
  acquire and the release cannot stall the phase on its single slot
- fail loudly when a NAT test finds no servers to probe: an empty source
  list reads as "no filter" downstream and probes the whole matrix
- run Gateway Peering Overlap NAT last in the gateway NAT/ACL suite; it
  creates an IPv4Namespace and a VPC and re-attaches a server, and
  without a wipe between tests the rest of the suite inherits whatever
  its reverts miss
- fix the -D -O ping fixture timestamps, which were non-monotonic and
  duplicated

Signed-off-by: Claude <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Signed-off-by: Emanuele Di Pascale <emanuele@githedgehog.com>
@edipascale
edipascale force-pushed the ema/post-merge-nits branch from 5e8adcb to 6711e57 Compare August 31, 2026 08:17
@Frostman
Frostman merged commit 9603ee9 into master Aug 31, 2026
28 checks passed
@Frostman
Frostman deleted the ema/post-merge-nits branch August 31, 2026 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:+release Enable VLAB release tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants