Skip to content

Support multiple domains per HTTP port - #219

Merged
arjunkomath merged 8 commits into
mainfrom
feat/multiple-domains-per-port
Jul 28, 2026
Merged

Support multiple domains per HTTP port#219
arjunkomath merged 8 commits into
mainfrom
feat/multiple-domains-per-port

Conversation

@arjunkomath

@arjunkomath arjunkomath commented Jul 28, 2026

Copy link
Copy Markdown
Member

Summary

  • allow distinct public HTTP domains to share one service container port across the UI, public API, revision model, and CLI
  • publish each numeric container port once while preserving historical deployment mappings and one route/certificate entry per domain
  • generate opaque, owner-scoped Traefik resource identities and reconcile against a canonical hash of the complete generated routes configuration
  • attribute access logs and forwarded Traefik metrics through explicit expected-state ownership metadata; service metrics now query exact service_id labels
  • make port mutations atomic and serialize TCP/UDP external-port allocation through the active transaction

Validation

  • Web: 301 tests passed
  • Web: tsc --noEmit
  • Agent: go test ./... and go build ./...
  • CLI: go test ./... and go build ./...
  • git diff --check

Review

The implementation plan and completed architecture were reviewed with Oracle. Follow-up fixes preserve cross-protocol numeric-port reuse, normalize historical duplicate physical mappings, cover serverless aliases, fail closed on untrusted metric attribution, and remove all parsing of semantic identity from Traefik resource names.

@github-actions

github-actions Bot commented Jul 28, 2026

Copy link
Copy Markdown

React Doctor found no issues. 🎉

⚠️ Warning: .github/workflows/react-doctor.yml is configured incorrectly. See below to fix.

React Doctor compares against main to report only the issues this pull request introduces. This run couldn't complete that comparison (usually a shallow CI checkout with no merge base), so it listed every issue in the changed files, including ones that already existed on main.

Add fetch-depth: 0 to the actions/checkout step in .github/workflows/react-doctor.yml so the checkout includes the history React Doctor needs:

 jobs:
   react-doctor:
     steps:
       - uses: actions/checkout@v5
+        with:
+          fetch-depth: 0

       - uses: millionco/react-doctor@v2

To silence this warning, set silence-missing-baseline-warning: true on the React Doctor action.

Reviewed by React Doctor for commit 8ca9bbf.

@arjunkomath
arjunkomath merged commit 425b53d into main Jul 28, 2026
16 checks passed
@arjunkomath
arjunkomath deleted the feat/multiple-domains-per-port branch July 28, 2026 13:05
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