Files
nexarch/archive/docs/RET-09-PRUEFPROTOKOLL.md
T
sysops eddb6da4a6 RET-09: modul-adapter-dienst-starten
- archive/cmd/moduleadapter-api: startet den fertigen RET-05
  RegisterHandler als eigenstaendigen HTTP-Dienst, Port 8095
- reines Wiring, kein Diff an internal/moduleadapter/ (verifiziert)
- real deployed auf 131, end-zu-ende per curl: Registrierung +
  Idempotenz-Nachweis (widerspruechliche zweite Werte werden ignoriert,
  urspruengliche Registrierung bleibt bestehen)

Pruefungen siehe archive/docs/RET-09-PRUEFPROTOKOLL.md
2026-08-30 09:27:51 +02:00

2.8 KiB
Raw Blame History

RET-09 Prüfprotokoll: Modul-Adapter-Dienst starten (RET-05 als laufender HTTP-Endpunkt)

Voraussetzung RET-05 bereits Fertig, hier UNVERÄNDERT.

Reines Wiring, keine neue Logik

git diff --stat archive/internal/moduleadapter/ liefert KEINEN Diff — moduleadapter.go/handler.go sind byteidentisch zum RET-05-Stand. RET-09 fügt ausschließlich cmd/moduleadapter-api/main.go (startet RegisterHandler auf einem Port) und die systemd-Einheit hinzu. Gleiches Muster wie RBAC-06/CFG-05, aber kleiner: kein neuer Auth-Mechanismus (RET-05s eigene AC verlangte keinen), kein neuer Vertrag, nur Betrieb des bereits Fertigen.

Umsetzung

  • archive/cmd/moduleadapter-api/main.go eigenständiger HTTP-Dienst, Port 8095.
  • deploy/systemd/nexarch-archive-moduleadapter-api.service.tmpl.

Prüfungen

# Prüfung Ergebnis
1 Dienst startet und bleibt stabil (systemctl status aktiv) bestanden real auf 131: nexarch-archive-moduleadapter-api.service aktiv, Restart=on-failure
2 Realer POST /register von einem externen Testclient liefert die erwartete Registrierung (idempotent, wie in RET-05 getestet) bestanden real per curl: erste Registrierung liefert neue ID mit übergebenen Werten (HTTP 200); zweiter Aufruf mit ABWEICHENDEN Werten (anderer retention_class/callback_url) liefert DIESELBE ID mit den URSPRÜNGLICHEN Werten unverändert zurück — RET-05s Idempotenz-/Überschreibschutz real über den laufenden Dienst bestätigt, Testdaten anschließend entfernt
3 Code-Review: keine Änderung an moduleadapter.go/handler.go selbst, nur main.go+systemd neu bestanden git diff --stat archive/internal/moduleadapter/ liefert leeren Diff gegenüber dem RET-05-Stand

Echte Verdrahtung auf 192.168.1.131

  • moduleadapter-api gebaut nach /opt/nexarch-archive/bin/
  • /etc/nexarch/archive-moduleadapter-api.env (0600)
  • nexarch-archive-moduleadapter-api.service installiert/aktiviert (dauerhaft, Restart=on-failure)
  • End-zu-Ende-Nachweis: curl POST /register zweimal mit widersprüchlichen Werten beim zweiten Aufruf, beide Male HTTP 200, zweite Antwort bestätigt die erste (Idempotenz), Testzeile anschließend entfernt.

Build/Test-Ergebnis (192.168.1.131)

go build ./...  -> clean
go vet ./...    -> clean
golangci-lint run ./cmd/moduleadapter-api/...  -> 0 issues

Keine neuen Go-Tests nötig (kein neuer Code außer main.go, das nur verdrahtet) die eigentliche Logik ist bereits durch RET-05s eigene Tests abgedeckt.

Gesamtergebnis

Bestanden. RET-05 ist jetzt ein real laufender, über systemd verwalteter Dienst. DOC-16 und ARC-11 können sich jetzt gegen einen echten Test-RET-05-Endpunkt verdrahten, statt gegen unverdrahteten Go-Code oder einen reinen In-Process-Mock zu testen.