Loading
Release 2.0.0: OOP architecture specs for ETSI SDG OOP Release 2
Summary
First tagged release (v2.0.0) of the Open Operator Platform architecture bundle. It merges develop into main. The repo contains only specs, decision records and vendored third-party API definitions, with no application code. Tag v2.0.0 after merge.
What's in this release
Platform
- Platform architecture, glossary and future-architecture summary (what comes after Release 2).
- Platform roles (ADR-0048).
- Overview, DataBus, HTTP-call and deployment diagrams, drawn in draw.io.
Components (each has overview, requirements and design, implementation and delivery, and interface contract)
| Component | Scope |
|---|---|
| OEG | Northbound CAMARA API termination, with the app registration, deployment and instance flows. OEG reads are scoped by app provider. QoD session service specification is seeded by the platform. |
| SRM | Orchestration and inventory as a modular monolith. SRM owns async network-capability expiry and federated zone locality and hand-off. Credentials in command payloads are handled by documented rules. |
| FM | Cross-operator EWBI federation, with a persistence model. OEG fronts the federation lifecycle as a sync proxy. FM receives GSMA callbacks through one router and onboards apps at partners. |
| TF-SDK | Vendor adapters inside SRM. Generic capability adapter interface, with topology discovery as a separate interface. Distributed as openop-tfsdk. |
| Portal | Developer portal and admin console: one container with a thin backend. Sessions are keyed by the cookie, and API clients register through Keycloak. |
| Data Lab | Dataspace metadata catalogue on piveau hub with the 6G-DALI profile. Standalone profile with shared ingress and IAM, and a Helm chart alternative to Compose. Versioned outside the release pin. |
| AI² | Agent and MCP server over OEG's APIs. |
Architecture Decision Records
70 ADRs (0001–0071, no ADR-0052) in decisions/. Main themes:
- Messaging and structure: NATS JetStream, SRM modular monolith, TF-SDK in-process, per-component DB isolation, DataBus validation-failure split.
- Federation and auth: partner-as-tenant, zone identity UUID passthrough, EWBI auth via OAuth2/Keycloak (mTLS deferred), federated lifecycle hand-off over the DataBus, GSMA problem+json errors on the OEG lifecycle proxy, no silent substitution of a resolved target.
- API and data contracts: CAMARA error model, CloudEvents callbacks, canonical target ports, unsupported manifest variants rejected with 501, terminal-record reads following the CAMARA schema.
- Security: callback tokens and partner client secrets encrypted in the component DB.
Vendored external specs (commit-pinned, ADR-0026)
CAMARA Edge Application Management, Quality on Demand, Traffic Influence, Device Location; GSMA OPG.04 EWBI Federation API v1.4.0 with an OOP profile overlay; 6G-DALI Metadata Application Profile.
Repository
- OKF v0.1 bundle layout with frontmatter, per-folder
index.mdand bundle-absolute links (ADR-0014). scripts/check-spec-versions.shenforces the Release 2 version pin2.0(ADR-0021, ADR-0071).- Apache License 2.0.
Reviewing
- Start at
index.md→platform/architecture.md, then a component'sindex.md. - Review per component. The ADRs carry the reasoning, and the component specs cite them.
Checks
-
scripts/check-spec-versions.shpasses - Links and
index.mdlistings resolve - Frontmatter
versionis2.0on all Release 2 specs
Release steps
- Merge to
main. - Tag
v2.0.0on the merge commit.``
Edited by Dimitrios Gogos