Skip to content

[PLAN] Dependency refresh: EDC v0.18.0 (preferred), Metaform JAD/CFM, and OSS baseline (Java, Gradle, Neo4j, Postgres, Node, …) #97

Description

@ma3u

Context

Three layers of drift, in priority order:

1️⃣ Eclipse EDC components (preferred — eclipse-edc org)

Built on EDC v0.16.0 (ADR-020, 2026-02-19). Upstream:

Component We use Latest Released
Connector v0.16.0 v0.18.0 2026-06-30
IdentityHub v0.16.0 v0.18.0 2026-06-30
FederatedCatalog federated-catalog-core 0.16.0 v0.16.0 current ✅

2️⃣ Metaform JAD/CFM sources (Metaform org)

Our ghcr.io/ma3u/health-dataspace/jad-* and cfm-* images are source-built (ADR-005) from Metaform repos: jad, cfm-edc, cfm-fulcrum. Build commit per image: UNKNOWN — must be inventoried (images float on :latest). CFM agents are compiled against the EDC BOM, so tier 1 and tier 2 must move together.

3️⃣ OSS baseline (repo-verified versions)

Component Local (docker-compose*) Azure (scripts/azure/env.sh) Note
PostgreSQL postgres:17.7-alpine postgres:16 ⚠️ version skew local vs Azure
Neo4j neo4j:5-community neo4j:5-community evaluate 2025.x LTS line
Keycloak quay.io/keycloak/keycloak:latest :latest unpinned
Vault hashicorp/vault:latest :latest unpinned (in-memory dev mode)
NATS nats:alpine :alpine unpinned
Traefik traefik:v3.4 pinned ✅
Node.js proxy engines >=20, CI node-version: 20 ⚠️ Node 20 LTS reached maintenance EOL 2026-04-30 → move to 22 LTS
Python (crawler/enricher) requires-python >=3.12 fine; revisit with 3.13
Java / Gradle via Metaform source builds versions UNKNOWN in this repo — inventory in Phase A; check EDC v0.18 JDK baseline

Plan

Phase A — Inventory & pin (no upgrades)

Phase B — EDC v0.18.0 (tier 1) + Metaform rebuild (tier 2)

Phase C — OSS baseline (tier 3)

  • Node 20 → 22 LTS: ui + services/neo4j-proxy engines, CI setup-node, local dev note (repo already runs under Node 25 locally — the vitest storage polyfill in ui/__tests__/setup.ts covers Node ≥22 webstorage)
  • Postgres/Keycloak/Vault/NATS pinned minor-version bumps, one service per PR
  • Neo4j 5 → 2025.x LTS spike: vector-index + GDS compatibility (docs/gotchas.md 2026-04 entries) before committing

Phase D — Validate & roll out

  • ./scripts/run-dsp-tck.sh + ./scripts/run-ehds-tests.sh green
  • JAD seed phases 1–7 on the upgraded stack (strict order)
  • Playwright --project=live incl. J730–J749 federated journeys
  • Azure rollout via CI (ACA :latest caching + CI-SP write pattern, docs/gotchas.md), ADR-027 off-hours schedule intact

Risks

  • EDC v0.16 → v0.18 spans two minors; management-API paths have moved between alpha versions before
  • CFM agents break if the connector moves without a lockstep Metaform rebuild (ADR-005)
  • Neo4j major-line move risks GDS/vector-index regressions — spike first, ADR before migrating

Related

ADR-005 · ADR-020 · ADR-022/024 · ADR-027 · issue #8 (closed) · planning item docs/planning/future/issue-97-edc-upgrade.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions