Commit 00c72680 authored by Dimitrios Gogos's avatar Dimitrios Gogos
Browse files

docs: state PostgreSQL 18, the version the platform chart deploys

The oop-platform-chart postgresql subchart runs postgres:18.6-alpine
(helm 2687670); the platform and SRM specs still said PostgreSQL 16.

Co-Authored-By: default avatarClaude Opus 5.5 <noreply@anthropic.com>
parent c0775aab
Loading
Loading
Loading
Loading
+2 −2
Changes for platform/architecture.md: 2 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -462,7 +462,7 @@ The hexagonal boundary is enforced mechanically: an `import-linter` rule forbids
| **Python 3.12** | All components | Single-language stack means shared models, shared tooling, shared developer knowledge |
| **FastAPI** | HTTP framework (OEG, SRM) | Async-native, Pydantic validation, OpenAPI generation |
| **NATS JetStream** | DataBus (async messaging) | Lightweight, high-throughput, built-in persistence, work queues, at-least-once delivery |
| **PostgreSQL 16** | Persistent storage | ACID transactions, JSONB for flexible schemas, proven at telecom scale |
| **PostgreSQL 18** | Persistent storage | ACID transactions, JSONB for flexible schemas, proven at telecom scale |
| **Redis** | Transient runtime controls | Rate limiting, idempotency locks, optional caching |
| **Keycloak** | Identity and access management | OAuth2/OIDC, realm-based multi-tenancy, role management |
| **Pydantic v2** | Schema validation | Type-safe data models at every boundary, automatic serialization |
@@ -904,7 +904,7 @@ A single root `docker-compose.yml` carries all services, gated by Compose profil
|---|---------------|---------------|------------|
| 1 | OEG and FM publish commands matching SRM's published JSON Schemas. | SRM rejects messages. | Shared schemas via oop-commons; FM vendors its own copy of the SRM contract types. Schema validation at both publisher and consumer. |
| 2 | TF-SDK adapters are available as importable Python classes implementing the generic `CapabilityExecutionAdapter` interface (ADR-0027). | SRM cannot talk to infrastructure. | MockAdapter for control-plane validation. Adapter interface contract in TF-SDK spec. |
| 3 | PostgreSQL 16 is available with separate databases for each component. | Components cannot persist state. | Standard infrastructure requirement. |
| 3 | PostgreSQL 18 is available with separate databases for each component. | Components cannot persist state. | Standard infrastructure requirement. |
| 4 | NATS JetStream is available with configured streams. | Async dispatch blocked. | Streams can be created at startup. |
| 5 | Edge zones and their compute/network domains are registered before orders arrive. | Orders fail with "no available zone." | Admin tools and catalog API for zone registration. |
| 6 | Keycloak is available for JWT issuance and validation. | Authentication fails. | OEG caches the signing keys (JWKS). |
+1 −1
Changes for srm/interface-contract.md: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -911,7 +911,7 @@ keys are constrained per capability, not open bags.

## H. Database Schema

Database `srm_db`, PostgreSQL 16. `service_order` and `service_instance` reference each other:
Database `srm_db`, PostgreSQL 18. `service_order` and `service_instance` reference each other:
create `service_order` without its instance foreign key, then `service_instance`, then add the key
with `ALTER TABLE`. The order below is safe for migrations. The tables are created by SRM at startup
today, without migrations (T15); differences between this schema and the code are listed under T16.
+1 −1
Changes for srm/overview-and-architecture.md: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -190,7 +190,7 @@ control paths in the deployment. There is no topology write API.
|---|---|---|
| E1 | OEG and FM publish commands that match the published schemas for the declared `schema_version` | SRM cannot fulfil reliably (Medium) |
| E2 | TF-SDK exposes an adapter factory that builds `CapabilityExecutionAdapter` instances from an adapter kind and a settings map; SRM never imports adapter classes or lists kinds itself ([ADR-0041](/decisions/0041-tfsdk-owns-adapter-construction.md)) | SRM cannot reach infrastructure (High) |
| E3 | PostgreSQL 16 with SRM's database provisioned (`srm_db`; the Helm chart names it `srm`) | SRM cannot persist (Low) |
| E3 | PostgreSQL 18 with SRM's database provisioned (`srm_db`; the Helm chart names it `srm`) | SRM cannot persist (Low) |
| E4 | The DataBus exists with `OOP_TASKS` and `OOP_EVENTS` configured or creatable at startup (today FM creates them, [implementation §Q](/srm/implementation-and-delivery.md#q-build-and-deployment)) | Asynchronous work is blocked (Low) |
| E5 | Zones, domains and capabilities are registered before orders arrive; SRM does not discover them on its own | Orders fail with no available zone or domain (Medium) |