[Epic] Bidirektionale Kommunikation (Rückkanal)
Warum?
Es soll die Rückkanal Erweiterung der Submission implementiert werden. (Das ist kein Warum
TODO
- Add more test for permission handling in https://git.fitko.de/fit-connect/zustelldienst/-/merge_requests/235
- Merge https://git.fitko.de/fit-connect/zustelldienst/-/merge_requests/235 in https://git.fitko.de/fit-connect/zustelldienst/-/tree/epic/bidirectional-communication
- Handle https://git.fitko.de/fit-connect/zustelldienst/-/merge_requests/236 (Issue #511 (closed))
- Handle https://git.fitko.de/fit-connect/zustelldienst/-/merge_requests/237 (Issue #512 (closed))
- Handle https://git.fitko.de/fit-connect/zustelldienst/-/merge_requests/238 (Issue #513 (closed))
- Inform the SDK team that OpenAPI 3.1.0 is used in the branch. They might want to test their model generation (if they do generate something). Ping @Klaus_Fischer and @Martin_Vogel.
- Check why pipeline fails in event-payload!1 (merged) → fixed it: event-payload@13a3539f
- HappyPath API Tests (ohne Callbacks)
- Release Submission API 1.3.0 (currently released as 1.3.0-rc2)
- 3. → @Team SSP → Nachricht an SSP (Metadaten 1.2.0 ergänzen) (#508)
- Merge docs!180 (closed) in docs!426 (closed) by @Michael_Haidner.
-
TODOs aus dem MIRO Board (vor dem TEST Deployment)
-
follow-up zu #1292 (closed):
- CHANGELOG detailieren (Warum ...? + Issue-Link
- Doku: Ereignisübersicht anpassen
-
follow-up zu #507 (closed)
- Doku anpassen und um Hinweis ergänzen für "overwriting-non-identical-reply-channel"
- Changelog: Unschärfe bereinigt - bei leeren/keinen ReplyChannels (TopLevel) wird das Feld ReplyChannels nicht zuückgegeben (anstelle eines Leeren Objekts)
- Release SET Schema 1.2.0 (currently released as 1.2.0-rc0)
- Release Metadatenschema 1.2.0 (currently released as 1.2.0-rc1)
- SSP-Anpassungen in der Dokumentation abgebildet (neue Screenshots + Erklärung); in der Sektion zustellpunktverwaltung
- In der Beschreibung der API-Endpunkte in der API-Spec wird die Sortierreihenfolge der Responses aus den Endpunkten /v1/submissions, /v1/replies und /v1/cases dokumentiert
-
follow-up zu #42 (closed)
- Diagramm überarbeiten (Backup der alten Version)
- #1291 (closed) abschließen
-
BiDiKo-Changelogs der einzelnen Artefakte anpassen:
- SET-Payload 1.2.0 → Reply-Events + forward-submission=deprecated
- zustelldienst
- submission-api
- metadaten
-
follow-up zu #1292 (closed):
-
TODOs aus dem MIRO Board (vor dem PROD Deployment)
- #1295 (closed) abschließen
-
follow-up zu #42 (closed)
- Prüfen, ob Callbacks korrekt gemäß Sequenzdiagramm implementiert sind
Links
- API Spec: #42 (closed)
- API Spec MR: submission-api!167 (merged)
- Dokumentation der neuen Events: docs!180 (closed)
- Schema der neuen Events: event-payload!1 (merged)
- Initiale Ticketschnitte: https://md.darmstadt.ccc.de/rueckkanal-tickets
Akzeptanzkriterien
- Die Implementierung der Submission API im Zustelldienst ist gemäß den Vorgaben aus #42 (closed) erfolgt.
- Die neue Implementierung der Submission API im Zustelldienst und die neuen Schemata wurden auf Abwärtskompatibilität getestet. Ggf. auch mit den .Net und Java SDKs geprüft.
-
Die Implementierung im SSP ist gemäß den Vorgaben aus #42 (closed) erfolgt.
- Destinations können mit den zusätzlichen Parametern für einen Rückkanal über FIT-Connect umgesetzt werden
-
Für Clients können die notwendigen Scopes hinterlegt werden
- In der Dokumentation wurden alle Aspekte der Umsetzung durch Subscriber und Sender beschrieben.
- Mit der Veröffentlichung der Dokumentation wurden auch die Aktualisierungen der API Spec und Schemata (Metadata und Security Event Token durchgeführt)
-
Die Einträge in den Collection-Resourcen sind zeitlich aufsteigend (neueste zuletzt) zu sortieren (
ORDER BY id
). Betrifft:-
GET /v1/replies
-
GET /v1/cases
-
CaseInformation/caseMessages
<- Hier reichtORDER BY id
nicht, da sie aus zwei Tabellen kommen.
-
-
Die spätere Umsetzung von #516 führt zu keinen Problemen.
Alte Sammlung von Akzeptanzkriterien und Issue-Verweisen
- Die Implementierung im Zustelldienst ist gemäß den Vorgaben aus #42 (closed) erfolgt.
-
In der Dokumentation wurde das Rückkanal-Feature in einem Überblicks-Artikel beschrieben.-> #515 (closed) -
In der Dokumentation wurde das Rückkanal-Feature aus Sender-Sicht beschrieben.-> #515 (closed) -
In der Dokumentation wurde das Rückkanal-Feature aus Subscriber-Sicht beschrieben.-> #515 (closed) -
In der Dokumentation wurden alle neuen Events beschrieben (siehe https://git.fitko.de/fit-connect/konzepte/-/blob/main/Event_Log.md).-> #515 (closed) -
Im Glossar ist der Begriff-> #514 (closed)processStandards
definiert -
Die Einträge in den Collection-Resourcen sind zeitlich aufsteigend (neueste zuletzt) zu sortieren (
ORDER BY id
). Betrifft:-
GET /v1/replies
-
GET /v1/cases
-
CaseInformation/caseMessages
<- Hier reichtORDER BY id
nicht, da sie aus zwei Tabellen kommen.
-
-
Nach dem Schließen eines Cases dürfen keine Einreichungen und Antworten mehr begonnen oder abgesendet werden. Folgende Events dürfen nach einem
close-case
nicht mehr auftreten:create-submission
,submit-submission
,create-reply
,submit-reply
. -
Der Zustelldienst prüft die Zugriffsberechtigung des Senders anhand des
sub
-Claims (Subject). - DVDV und Routing-Dienst / Routing API angepasst (Verbundendes Issue #278 prüfen)
- SSP für FIT-Connect Rückkanal Option angepasst
Stories zur Umsetzung der Akzeptanzkriterien im EPIC
Backend Stories
-
#506 (closed) (merged withepic/bidirectional-communication
branch) -
#507 (closed) (merged withepic/bidirectional-communication
branch) -
#509 (closed) (merged withepic/bidirectional-communication
branch) -
#510 (closed) (merged withepic/bidirectional-communication
branch) -
#511 (closed) (merged withepic/bidirectional-communication
branch) -
#512 (closed) -
#513 (closed) (merged withepic/bidirectional-communication
branch) -
#1208 (closed) (merged withepic/bidirectional-communication
branch) -
#1226 (closed)
neue Stories nach PO Review (Teil 1):
Ergänzend Umsetzung von folgendem Issue prüfen: #278 (aktuell in Buffer und nicht in Ready)
Frontend Stories
Doku Stories
- #115 (closed) / #515 (closed). MR: docs!426 (closed).
- #514 (closed)
- Callback Documentation (general): https://git.fitko.de/fit-connect/arch/-/blob/main/architecture/src/main/asciidoc/src/callbacks.adoc
Klärungspunkt: Wie sinnvoll die einzelnen Issues umsetzen und in Main mergen?
Durchführungsplan (vom Entwickler bei Storyplanung auszufüllen)
- Implementierung im Zustelldienst (API-Verhalten & Erstellung von SETs)
- Rückkanal-Möglichkeiten im SSP ist angepasst
-
Aufnehmen ins Glossar:
processStandards
-
Die Client-IDDer Subject-Claim (sub
) des Senders wird in den Case übernommen. -
Die Client-IDDer Subject-Claim (sub
) aus dem Case wird bei allen Zugriffen des Senders geprüft. Achtung: Zugriffe des Subscribers werden weiterhin über die Destination geprüft. - ...
Follow-Up Stories oder Epics
- Aufräumen der Callbacks (https://git.fitko.de/fit-connect/zustelldienst/-/blob/feature/1295-introduce-notify-reply-event/docs/callbacks.adoc?ref_type=heads) - z.B. warum wird der Sender via Callback informiert, dass er eine Submission angelegt oder versandt hat