Commit eb774acd authored by George Papathanail's avatar George Papathanail
Browse files

fix: remove hardcoded FM url for adr and oeg docs

parent fa9c09af
Loading
Loading
Loading
Loading
+2 −2
Changes for decisions/0045-oeg-fronts-federation-lifecycle-ewbi-as-sync-proxy.md: 2 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -47,8 +47,8 @@ Options considered:
## Decision

Option B. OEG terminates the federation-lifecycle and zone-subscription EWBI operations and
forwards each one to FM over a synchronous internal HTTP call under `http://fm:8082/internal/...`,
passing the OPG.04 request body through unchanged and relaying FM's response unchanged. The
forwards each one to FM over a synchronous call to FM's internal HTTP API, passing the OPG.04
request body through unchanged and relaying FM's response unchanged. The
`command.fm.federation.*` subject family is not created; the DataBus is not used for federation
establishment, and stays scoped to the `command.srm.*` / `event.srm.*` flows FM already uses.

+3 −2
Changes for fm/requirements-and-design.md: 3 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -511,8 +511,9 @@ edge concerns (TLS, auth, `correlation_id`, logging) and nothing else. FM perfor
parsing, validation, agreement checks, persistence, topology hiding, and the outbound partner
handshake, exactly as if the request had arrived directly on EWBI.

**Base path:** `http://fm:8082/internal/federation/`. Each endpoint mirrors the EWBI operation of
the same name (L, Priority Federation-Management Operations).
Endpoints live under `/internal/federation/` on FM's internal HTTP API (host and port are
deployment configuration, per L.2). Each one mirrors the EWBI operation of the same name (L,
Priority Federation-Management Operations); paths below are relative to that base.

| Method | Path | OPG.04 operation |
|---|---|---|
+4 −4
Changes for oeg/architecture.md: 4 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -232,9 +232,9 @@ lands on OEG and is proxied to FM.
  1. OEG terminates the HTTPS request, authenticates it (partner OAuth2 for inbound EWBI, or JWT +
     `operator` role for the operator trigger), and propagates `correlation_id`.
  2. OEG calls FM's corresponding internal endpoint synchronously
     (`http://fm:8082/internal/...`, [fm/requirements-and-design.md §L.3b](/fm/requirements-and-design.md)),
     passing the OPG.04 request body through unchanged. OEG writes no `operations` row and holds
     no federation state — the only state is the in-flight HTTP call awaiting FM.
     ([fm/requirements-and-design.md §L.3b](/fm/requirements-and-design.md)), passing the OPG.04
     request body through unchanged. OEG writes no `operations` row and holds no federation state
     — the only state is the in-flight HTTP call awaiting FM.
  3. FM performs all OPG.04 parsing, validation, agreement checks, persistence (`partner_ops`,
     `federation_agreements`, `federation_contexts`), topology hiding, and — for establishment —
     the outbound `CreateFederation` / `ZoneSubscribe` handshake with the partner's FM.
@@ -318,7 +318,7 @@ These assumptions are necessary for the architecture to work as written.
| E3 | Keycloak JWKS reachable from OEG at startup (cached). | `/readyz` fails if JWKS unhealthy. Medium risk. |
| E4 | App Providers register callback URLs out-of-band (Portal) or via API — HTTPS only in production. | Callback delivery fails. Medium risk. |
| E5 | OEG and SRM share identical JSON semantics for `command.srm.*` payloads via `oop-commons` event schemas. | Messages rejected by SRM. High risk. |
| E6 | FM exposes internal HTTP endpoints (`http://fm:8082/internal/...`) for the federation-lifecycle and zone-subscription operations OEG fronts, accepting the unmodified OPG.04 body and replying synchronously (ADR-0045). | OEG cannot proxy federation establishment; inbound `POST /partner` fails. Medium risk. |
| E6 | FM exposes internal HTTP endpoints for the federation-lifecycle and zone-subscription operations OEG fronts (RD §L.3b), accepting the unmodified OPG.04 body and replying synchronously (ADR-0045). | OEG cannot proxy federation establishment; inbound `POST /partner` fails. Medium risk. |

## F. Open Questions / Unknowns

+1 −1
Changes for oeg/interface-contract.md: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -626,7 +626,7 @@ is routed straight to FM by Nginx and never reaches OEG.

1. OEG terminates the HTTPS request and authenticates it — partner OAuth2 Client-Credentials for
   inbound EWBI (ADR-0042), or JWT + `operator` role for the operator establishment trigger.
2. OEG calls FM's matching internal endpoint synchronously under `http://fm:8082/internal/...`
2. OEG calls FM's matching internal endpoint synchronously
   ([fm/requirements-and-design.md §L.3b](/fm/requirements-and-design.md)), forwarding the OPG.04
   request body unchanged. OEG writes no `operations` row, creates no domain model, and holds no
   federation state — the only state is the in-flight HTTP call awaiting FM — and does not