Skip to content

fix(network): align destination checks for direct connections - #5004

Merged
johntmyers merged 2 commits into
mainfrom
fix/direct-connection-destination-checks/johntmyers
Oct 28, 2026
Merged

johntmyers merged 2 commits into
mainfrom
fix/direct-connection-destination-checks/johntmyers

Conversation

@johntmyers

Copy link
Copy Markdown
Collaborator

Summary

Keep policy DNS address selection consistent with endpoint decisions for direct connections. Apply destination checks to selected address candidates before constructing upstream connectors.

Changes

  • Preserve endpoint metadata when preparing DNS mappings.
  • Select address candidates from matching endpoint contracts and reuse destination validation.
  • Preserve address ordering and deduplication across compatible rules.
  • Extend IPv4, IPv6, and per-executable regression coverage.
  • Preserve the Python installation prefix for copied test executables.

Testing

Prior local validation:

  • Network unit suite: 1,537 passed, 2 ignored.
  • Component Clippy, formatting, and commit hooks passed.
  • Docker transparent-TCP compatibility passed.
  • Copied Python probes verified in the workload image.

Pending:

  • CI validation against current main.
  • Podman live regression.

Checklist

  • Unit and E2E coverage added
  • Commits signed off
  • CI passes

Signed-off-by: John Myers <9696606+johntmyers@users.noreply.github.com>
@johntmyers johntmyers added the test:e2e Requires end-to-end coverage label Oct 28, 2026
@github-actions

Copy link
Copy Markdown

Label test:e2e applied, but pull-request/5004 does not exist yet. A maintainer needs to comment /ok to test c58d3368448ff12c4c40c83fd4843386054120cb to mirror this PR. Once the mirror exists, re-apply the label or re-run Branch E2E Checks from the Actions tab.

alangou
alangou previously approved these changes Oct 28, 2026
@johntmyers
johntmyers added this pull request to the merge queue Oct 28, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 28, 2026
Signed-off-by: John Myers <9696606+johntmyers@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

Compatibility review (advisory)

New or updated breaking changes; see the full report for all findings.

1. policy — No explicit risk acceptance found

Hostless allowed_ips rules previously authorized mapped hostname connections, but transparent TCP now requires the caller to match a hosted endpoint in the DNS record.

  • Impact: Mediated clients receive InvalidDestination when another binary's hosted rule supplies the DNS mapping, even when both rules explicitly allow its resolved IPs.
  • Action: Restore hostless allowed_ips access to trusted DNS pins while enforcing the caller's explicit allowlist, since this train prohibits removing Stable policy behavior.
  • PR: fix(network): align destination checks for direct connections #5004
Review details
  • Execution: complete
  • Candidate: PR #5004 (0cc0e0e652c3feb47548a12579ceb503dbfc35b5)
  • Baseline: 9f1cdb4ef6ed6be9fd86507580f9656b61b9c754 (9f1cdb4ef6ed6be9fd86507580f9656b61b9c754)
  • Reviewed: rust-sdk, python-sdk, go-sdk, typescript-sdk, api-behavior, cli, configuration, policy, helm, state

Advisory review; publication gates are unchanged.

Branch check run

@johntmyers
johntmyers requested a review from alangou October 28, 2026 18:15
@johntmyers
johntmyers enabled auto-merge October 28, 2026 18:16
@johntmyers
johntmyers added this pull request to the merge queue Oct 28, 2026
Merged via the queue into main with commit ff1f8ff Oct 28, 2026
125 of 126 checks passed
@johntmyers
johntmyers deleted the fix/direct-connection-destination-checks/johntmyers branch October 28, 2026 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:e2e Requires end-to-end coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants