Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Add a provider-neutral HTTP routing contract for reverse-proxy integration

Open
#883 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
18/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
docker-compose

Research direction

Start with docs/common-ground-alignment.md to see why CDS lacks a reverse-proxy binding, then read the hand-written traefik/dynamic/keycloak.yml and the existing contracts under shared/contracts/. The contract name and shape are still open, so agree the design with the maintainer before editing. Done means the acceptance criteria are met: the contract is documented, the proxy generates routes from bound contracts, the static file is removed from the reference profile, and validator and planner tests plus a CHANGELOG entry are added.

Written by the indexing model from the issue text.

Description

area:configuration enhancement priority:medium size:medium

Problem

Routing a TLS entrypoint to an HTTP service currently relies on a hand-written file at traefik/dynamic/keycloak.yml that hardcodes the backend's Compose service name and URL. CDS has no reverse-proxy/http-service binding mechanism (see docs/common-ground-alignment.md), so this wiring sits outside the module and contract system and conflicts with module isolation (modules must not hardcode another module's service name).

Proposal

Introduce a provider-neutral contract (e.g. http-service / reverse-proxy-route) where:

  • a service-providing module declares host, port, scheme and optional path/host rules;
  • a reverse-proxy module consumes it via consumes + mappedFrom, bound in the profile with contractRef;
  • the proxy's routing configuration is generated from the bindings instead of a static repo-root file.

Acceptance criteria

  • Contract documented under shared/contracts/.
  • Reverse-proxy module generates routes from bound contracts; no hardcoded service names.
  • The reference profile drops the static routing file.
  • Validator/planner tests and CHANGELOG entry added.

Estimated effort: 4-6 hours

Dominant language
Python
Stars
8
Forks
12
Avg merge
1d 2h
Merged PRs (30d)
93

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from RonaldHensbergen/composable-data-stack

All issues in RonaldHensbergen/composable-data-stack

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.