DEENESPTFRRUARHIKOZHNL

class apext::diag::uds_transport::UdsTransportProtocolHandler

[SWS_DM_00315] Upstream: RS_Diag_04147, RS_Diag_04168

class UdsTransportProtocolHandler {...};

Abstract Class, which a specific UDS Transport Protocol (plugin) shall subclass.

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Forwarding-Header#include "apext/diag/diag_fwd.h"
Scopenamespace apext::diag::uds_transport

User GuideKI-GENERIERT

Dient als abstrakte Basisklasse für UDS-Transport-Plugins zur Übertragung und Weiterleitung von Diagnosebotschaften.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 8b34a053e223 Herkunft Offene Fragen (2)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Dient als abstrakte Basisklasse für UDS-Transport-Plugins zur Übertragung und Weiterleitung von Diagnosebotschaften.

Die abstrakte Klasse dient UDS-Transport-Plugins als Basisschnittstelle für die standardisierte Anbindung an das adaptive Diagnosemanagement (AUTOSAR_AP_SWS_Diagnostics §7.1.1 „Support of UDS Transport Layer“). Eine abgeleitete Implementierung meldet empfangene Diagnosebotschaften an den Protokoll-Manager weiter und überträgt generierte Antwortnachrichten über netzwerkspezifische Kanäle an den Diagnosetester. Der Lebenszyklus unterliegt einer strikten Abfolge aus Erzeugung, separater Initialisierung, asynchronem Start und geordnetem Stoppen ([SWS_DM_00329]). Nach der Instanziierung sind die betrieblichen Methodenaufrufe nicht thread-safe und erfordern eine koordinierte Steuerung durch den Diagnosekern.

Kontext

Die Klasse apext::diag::uds_transport::UdsTransportProtocolHandler ist eine abstrakte Basisklasse innerhalb des Moduls diag der AUTOSAR Adaptive Platform. Sie definiert die standardisierte Schnittstelle, über die proprietäre oder protokollspezifische UDS-Transport-Plugins an das adaptive Diagnosemanagement (DM) angebunden werden (AUTOSAR_AP_SWS_Diagnostics §7.1.1 „Support of UDS Transport Layer“, [SWS_DM_00315]). Jedes konkrete Transportprotokoll – beispielsweise zur Diagnose über automobile Netzwerkmedien – implementiert diese Schnittstelle als abgeleitete Subklasse. Der DM dürfte die jeweilige Handler-Instanz über deren gesamten Betriebslebenszyklus exklusiv besitzen und verwalten. Frage Q-ef308265bfdf6cec (offen) Die Interaktion zwischen dem Diagnosekern und dem Plugin erfolgt über die Referenz transportprotocolManager vom Typ UdsTransportProtocolMgr&, welche im Konstruktor übergeben und geschützt gespeichert wird ([SWS_DM_09015], [SWS_DM_09025]). Jeder Handler wird durch eine numerische UdsTransportProtocolHandlerID identifiziert, die über GetHandlerID() abgefragt werden kann ([SWS_DM_00325]).

Lebenszyklus

Der Lebenszyklus eines UDS-Transport-Protokoll-Handlers wird vom DM streng sequenziell gesteuert ([SWS_DM_00329]). Nach der Instanziierung über den Konstruktor UdsTransportProtocolHandler ([SWS_DM_09015]) trennt die Methode Initialize() die eigentliche Protokollinitialisierung von der Objekterzeugung ([SWS_DM_00319]). Bis auf eine optionale Abfrage über GetPeriodicHandler() darf der DM vor der erfolgreichen Rückgabe von InitializationResult::kInitializeOk keine Methoden auf dem Handler aufrufen ([SWS_DM_01746], [SWS_DM_09017]). Nach erfolgreicher Initialisierung versetzt der Aufruf von Start() den Handler in den aktiven Verarbeitungszustand ([SWS_DM_00322]). Um die Hochlaufzeit zu minimieren, ist Start() als asynchrone Operation konzipiert; der DM dürfte den parallelen Start mehrerer Handler intern koordinieren. Frage Q-66e5a53d55e6d812 (offen) Wechselt der DM beim Herunterfahren in den Zustand ApplicationState.kTerminating, weist er den Handler über Stop() zur Beendigung an ([SWS_DM_00323], [SWS_DM_00333]). Der DM wartet auf den Abschluss, den der Handler durch Aufruf von UdsTransportProtocolMgr::HandlerStopped() quittiert ([SWS_DM_00340]). Nach Rückkehr aus Stop() ist dem Plugin jeder Methodenaufruf an den Manager außer HandlerStopped() untersagt ([SWS_DM_01741]). Die Freigabe der Ressourcen erfolgt schließlich über den virtuellen Destruktor ([SWS_DM_09016]). Während der Konstruktor thread-safe ist, sind die betrieblichen Schnittstellenmethoden nicht thread-safe deklariert.

lebenszyklus Erzeugt Erzeugt Initialisiert Initialisiert Erzeugt->Initialisiert Initialize() == kInitializeOk InitialisierungFehlgeschlagen InitialisierungFehlgeschlagen Erzeugt->InitialisierungFehlgeschlagen Initialize() == kInitializeFailed Gestartet Gestartet Initialisiert->Gestartet Start() Stoppend Stoppend Gestartet->Stoppend Stop() Gestoppt Gestoppt Stoppend->Gestoppt HandlerStopped()

Zustandsdiagramm: Lebenszyklusphasen und Zustandsübergänge eines UDS-Transport-Handlers. Quellen: [SWS_DM_00319], [SWS_DM_00322], [SWS_DM_00323], [SWS_DM_00329], [SWS_DM_01745], [SWS_DM_01746]

Nutzungspfad

Im regulären Diagnosebetrieb verarbeitet der Handler eingehende Botschaften und überträgt Antworten. Sobald an der Netzwerkschnittstelle mindestens Quelladresse, Zieladresse, Adresstyp (physisch oder funktional), Gesamtnachrichtenlänge und bei mehrbylastigen Nutzdaten die ersten zwei Bytes (payloadInfo) vorliegen, meldet die Implementierung die Anfrage über UdsTransportProtocolMgr::IndicateMessage() an den Manager ([SWS_DM_00342], AUTOSAR_AP_SWS_Diagnostics §7.1.1.3 „UDS message transmission on a UDS TransportLayer“). Jede Anfrage ist einem eindeutigen Kanal zugeordnet (AUTOSAR_AP_SWS_Diagnostics §7.1.1.4 „Channel Notifications“). Zur Beantwortung übergibt der DM die Diagnoseantwort an denselben Handler und Kanal mittels Transmit(message, channelId) ([SWS_DM_00327], [SWS_DM_00348]). Nach der physischen Übertragung gibt der Handler das übergebene Nachrichtenobjekt an den Manager über UdsTransportProtocolMgr::TransmitConfirmation() zurück ([SWS_DM_00327], [SWS_DM_00351]). Ein spezialisierter Nutzungspfad betrifft Steuergeräteresets (UDS-Dienst 0x11) mit positiver Antwort nach dem Neustart: Hier fordert der DM vor dem Reset über NotifyReestablishment(channelId) an, dass der Handler die Verbindungsinformationen nichtflüchtig sichert; nach Neustart und erneutem Start() meldet der Handler die Wiederherstellung desselben Kanals via ChannelReestablished() ([SWS_DM_00326], [SWS_DM_01744]).

UDS-Nachrichtenindikation und AntwortübertragungDiagnosetesterUdsTransportProtocolHandlerUdsTransportProtocolMgrDiagnostic ManagementUDS-Anfrage empfangenIndicateMessage(globalChannelId, ...)Diagnoseanfrage weiterleitenDiagnoseanfrage verarbeitenTransmit(message, channelId)UDS-Antwort an Netzwerk sendenTransmitConfirmation(message, result)

Sequenzdiagramm: Ablauf von UDS-Nachrichtenindikation und Antwortübertragung. Quellen: [SWS_DM_00327], [SWS_DM_00342], [SWS_DM_00348], [SWS_DM_00351]

Fehlerszenarien

Schlägt die Initialisierung der Transportschicht fehl und gibt Initialize() den Status InitializationResult::kInitializeFailed zurück, bricht der DM den Hochlaufprozess dieses Protokolls unverzüglich ab und ruft auf dieser Instanz keine weiteren Methoden auf ([SWS_DM_01745], [SWS_DM_09017]). Werden periodische Übertragungen auf dem Transportprotokoll nicht unterstützt, liefert der Aufruf von GetPeriodicHandler() ein ara::core::Result mit dem Fehlercode kConfigurationMismatch ([SWS_DM_01068]). Kann eine angeforderte Kanalwiederherstellung für einen ECU-Reset nicht zugesichert werden, schlägt NotifyReestablishment() fehl und signalisiert dies durch den Rückgabewert false ([SWS_DM_00326]). Scheitert schließlich der Sendevorgang einer Diagnoseantwort auf der Netzwerkschicht, muss der Handler dies bei der Bestätigung an den Manager mitteilen, indem das Argument result in TransmitConfirmation() auf kTransmitFailed gesetzt wird ([SWS_DM_00351]).

Dieser Leitfaden wurde automatisch generiert auf Basis der AUTOSAR-Spezifikation R25-11.

Mitgliederkarte

Klassendiagramm

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G napext__diag__uds_transport__UdsTransportProtocolHandler1 UdsTransportProtocolHandler + transportprotocolManager + ~UdsTransportProtocolHandler() + UdsTransportProtocolHandler() + GetHandlerID() + GetPeriodicHandler() + Initialize() + NotifyReestablishment() + Start() + Stop() + Transmit()

Detailansicht

Wähle in der Gliederung einen Eintrag aus.

Konstruktoren und Destruktor

Constructor of UdsTransportProtocolHandler.

explicit UdsTransportProtocolHandler (const UdsTransportProtocol HandlerID handlerId, UdsTransportProtocolMgr &transportProtocolMgr) noexcept;

Destructor of UdsTransportProtocolHandler.

virtual ~UdsTransportProtocolHandler () noexcept=default;

Methoden

GetHandlerID function

Return the UdsTransportProtocolHandlerID, which was given to the implementation during construction (ctor call).

virtual UdsTransportProtocolHandlerID GetHandlerID () const noexcept;

Returns the corresponding periodic Transport Protocol handler.

virtual ara::core::Result< UdsTransportProtocolPeriodicHandler & > Get PeriodicHandler () noexcept;
Initialize function

Initializes UDS Transport Protocol handler. This methods needs to be called before a call of Start(). It is meant to separate the actual initialization of the UDS Transport Protocol handler from the constructor.

virtual InitializationResult Initialize () noexcept=0;

Tells the UdsTransportProtocolHandler, to notify the DM core via UdsTransportProtocol Mgr::ChannelReestablished() if the given channel has been re-established after next Uds TransportProtocolHandler::Start(). The main purpose of this method is to allow the DM to provide an ECU-Reset (0x11 service), with configuration option "positive response AFTER reset". In this scenario, the request for 0x11 will be received on a certain channel (GlobalChannel Identifier), then the ECU-Reset takes place and after ECU-Restart, all UdsProtocol Handlers/-plugins get restarted via call to UdsTransportProtocolHandler::Start().

virtual bool NotifyReestablishment (ChannelID channelId) noexcept=0;
Start function

Start processing the UDS Transport Protocol. Within the implementation there might be some stack specific implementation. The method is asynchronous to allow the DM to start multiple UdsTransportProtocolHandler in parallel to reduce startup time.

virtual void Start () noexcept=0;
Stop function

Method to indicate that this UdsTransportProtocolHandler should terminate. If UdsTransportProtocolHandler has stopped, it shall call UdsTransportProtocolMgr:: HandlerStopped(UdsTransportProtocolHandlerID).

virtual void Stop () noexcept=0;
Transmit function

Transmit a UDS message via the underlying UDS Transport Protocol channel.

virtual void Transmit (UdsMessageConstPtr message, ChannelID channel Id) noexcept=0;

Enumerationen

Result of Initialize handler.

enum class InitializationResult : std::uint8_t {...};

Konstanten

The UdsTransportProtocolMgr used/provided by the DM.

UdsTransportProtocolMgr& transportprotocolManager;

Dokumentation der Methoden

function GetHandlerID [SWS_DM_00325] Upstream: RS_Diag_04147, RS_Diag_04168

virtual UdsTransportProtocolHandlerID GetHandlerID () const noexcept;

Return the UdsTransportProtocolHandlerID, which was given to the implementation during construction (ctor call).

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
UdsTransportProtocolHandlerIDUdsTransportProtocolHandlerID.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00325
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00325@rel:R25-11#ba13d0a6
Content hash
ba13d0a6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00325
Status: valid/unmigrated Version: rel:R25-11#98596bd3 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00325@rel:R25-11#98596bd3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ba13d0a62026-09-30
  • R19-11rel:R19-11#47151ef62026-10-14
  • R20-11rel:R20-11#8d4acd5c2026-10-14
  • R21-11rel:R21-11#7170c6052026-10-14
  • R22-11rel:R22-11#a8caf4042026-10-14
  • R23-11rel:R23-11#5baf09172026-10-14
  • R24-11rel:R24-11#13e886b82026-10-14
  • R25-11rel:R25-11#98596bd32026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function GetPeriodicHandler [SWS_DM_01068] Upstream: RS_Diag_04215

virtual ara::core::Result< UdsTransportProtocolPeriodicHandler & > Get PeriodicHandler () noexcept;

Returns the corresponding periodic Transport Protocol handler.

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< UdsTransportProtocolPeriodicHandler & >If periodic transmissions are supported on this transport protocol, a reference to UdsTransportProtocolPeriodicHandler is returned, and if not supported, an error (kConfigurationMismatch).

Fehler

FehlercodeBeschreibung
kConfigurationMismatch

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01068
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01068@rel:R25-11#33111614
Content hash
33111614
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01068
Status: valid/unmigrated Version: rel:R25-11#ab56dcd2 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01068@rel:R25-11#ab56dcd2
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#331116142026-09-30
  • R20-11rel:R20-11#846d3b552026-10-14
  • R21-11rel:R21-11#49b00e832026-10-14
  • R22-11rel:R22-11#1ddbb3d62026-10-14
  • R23-11rel:R23-11#f5d366552026-10-14
  • R24-11rel:R24-11#4fcfe9bb2026-10-14
  • R25-11rel:R25-11#ab56dcd22026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function Initialize [SWS_DM_00319] Upstream: RS_Diag_04147, RS_Diag_04168

virtual InitializationResult Initialize () noexcept=0;

Initializes UDS Transport Protocol handler. This methods needs to be called before a call of Start(). It is meant to separate the actual initialization of the UDS Transport Protocol handler from the constructor.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 2d1a514affd8 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die rein virtuelle Methode Initialize dient der expliziten Initialisierung einer Instanz von apext::diag::uds_transport::UdsTransportProtocolHandler und trennt diesen Vorgang formal von der Konstruktion des Objekts [SWS_DM_00319]. Sie wird vom Diagnostic Manager (DM) synchron und ohne Parameter aufgerufen, wirft keine Ausnahmen (noexcept) und liefert ein InitializationResult zurück [SWS_DM_00319] [SWS_DM_09017].

Lebenszyklus und Nebenläufigkeit

Der Aufruf ist eingebettet in das Lebenszyklusmanagement des UDS-Transport-Layers AUTOSAR_AP_SWS_Diagnostics §7.1.1.1 „Initialization, Starting and Stopping of a UDS TransportLayer“. Der DM muss die Phasen in fester Reihenfolge verwalten: Konstruktion, Aufruf von Initialize, Start über Start und Beendigung über Stop [SWS_DM_00329]. Die Methode ist als nicht threadsicher (not thread-safe) spezifiziert [SWS_DM_00319]; der DM dürfte sie daher vermutlich im Rahmen einer synchronen Initialisierungsphase ohne parallele Zugriffe ausführen. Frage Q-06180f9d8fe99092 (offen)

Fehlerbehandlung und Zusammenspiel

Die Methode signalisiert das Ergebnis über den Enumerator InitializationResult::kInitializeOk oder InitializationResult::kInitializeFailed [SWS_DM_09017]. Das weitere Verhalten des DM hängt unmittelbar vom Rückgabewert ab:

  • Bei erfolgreicher Rückgabe mit kInitializeOk darf der DM nachfolgende Methoden des Handlers aufrufen; vor diesem erfolgreichen Rückgabewert ist mit Ausnahme von GetPeriodicHandler kein weiterer Methodenaufruf zulässig [SWS_DM_01746].
  • Gibt der Handler kInitializeFailed zurück, bricht der DM den Initialisierungsprozess dieses Transportprotokolls vollständig ab und ruft an der betroffenen Instanz keine weiteren Methoden mehr auf [SWS_DM_01745].

Dieser Text wurde von einer KI basierend auf AUTOSAR R25-11 generiert.

Implementer's Guide folgt (Komplexität I1)

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
InitializationResultkInitializeOk, in case, the initialization was successful, else kInitializeFailed is returned.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00319
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00319@rel:R25-11#6d238b48
Content hash
6d238b48
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00319
Status: valid/unmigrated Version: rel:R25-11#a9abbec3 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00319@rel:R25-11#a9abbec3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#6d238b482026-09-30
  • R19-11rel:R19-11#24dcf7ab2026-10-14
  • R20-11rel:R20-11#4d518db32026-10-14
  • R21-11rel:R21-11#4d518db32026-10-14
  • R22-11rel:R22-11#2a8e1b2b2026-10-14
  • R23-11rel:R23-11#79c84e752026-10-14
  • R24-11rel:R24-11#a9655bf92026-10-14
  • R25-11rel:R25-11#a9abbec32026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function NotifyReestablishment [SWS_DM_00326] Upstream: RS_Diag_04147, RS_Diag_04168

virtual bool NotifyReestablishment (ChannelID channelId) noexcept=0;

Tells the UdsTransportProtocolHandler, to notify the DM core via UdsTransportProtocol Mgr::ChannelReestablished() if the given channel has been re-established after next Uds TransportProtocolHandler::Start(). The main purpose of this method is to allow the DM to provide an ECU-Reset (0x11 service), with configuration option "positive response AFTER reset". In this scenario, the request for 0x11 will be received on a certain channel (GlobalChannel Identifier), then the ECU-Reset takes place and after ECU-Restart, all UdsProtocol Handlers/-plugins get restarted via call to UdsTransportProtocolHandler::Start().

Now there are two expectations, when this method has been called before and returned "TRUE": If the same remote client connects to the UdsProtocolHandler, it shall get a channel identification with the same identifying as the last time. It consecutively calls UdsTransportProtocolMgr::ChannelReestablished(Global ChannelIdentifier).

The detection/decision, whether the "same" client reconnects as before is an UdsProtocol Handler implementation specific decision.

The general expectation is:

If the channel is set up from exactly the same remote network-endpoint, it typically gets the same ChannelID. To support this functionality, the implementation at least has to store non-volatile, that this notification has to be done. Further it might be needed to store some additional connection specific info non-volatile to make sure, that the same ChannelID can be reassigned. This is the case if the mapping of protocol specific channel info -> channelID isn’t a

stable bijective mapping!

Small example:

The underlying network protocol, which UdsProtocolHandler implements is based on TCP. At the point in time, where the 0x11 Service Identifier request is received on channel identified by the DM calls UdsTransportProtocolHandler::NotifyReestablishment() on this ChannelID.

Now the implementation of UdsProtocolHandler stores non-volatile in the context of this call:

• NetworkEndpoint (IP-address and port number) of the channel. • NetworkEndpoint (IP-address and port number) of the local port (because in this example, the UdsTransportProtocolHandler listens on/supports different ports). • ChannelID it has currently assigned. After restart this ChannelID is only reused for a channel with exactly the same Network Endpoint addresses as stored non-volatile.

If this ChannelID then gets reassigned, then UdsTransportProtocolMgr::Channel Reestablished() has to be called.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 677bdfc28d3d Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode NotifyReestablishment wird synchron durch den Diagnostic Manager (DM) aufgerufen, wenn im Rahmen eines Steuergeräteneustarts (UDS-Dienst 0x11) eine positive Antwort erst nach erfolgtem Neustart gesendet werden soll ([SWS_DM_00326], [SWS_DM_00360]). Über den Parameter channelId wird der zu überwachende Transportkanal übergeben ([SWS_DM_00326]).

Mit dem Aufruf wird die Transportprotokoll-Implementierung angewiesen, die Überwachungsanforderung persistent zu sichern ([SWS_DM_00359]). Nach dem Wiederanlauf des Systems und dem erneuten Start der Handler meldet der Protokoll-Handler die Wiederverfügbarkeit des Kanals asynchron mittels [SWS_DM_00313] an den DM ([SWS_DM_00358]). Der boolesche Rückgabewert signalisiert mit true, dass die Benachrichtigungsanforderung akzeptiert wurde und erfüllt werden kann; andernfalls wird false zurückgegeben ([SWS_DM_00326]).

Hinsichtlich Nebenläufigkeit und Fehlerbehandlung gilt:

Dieser Nutzungshinweis wurde von einer KI auf Basis der Spezifikation erstellt.

Implementer's Guide folgt (Komplexität I2)

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
channelIdThe channelID, whose re-establishment shall be notified to Uds TransportProtocolMgr

Rückgabewert

TypBeschreibung
boolTRUE, if notification request is accepted and can be fulfilled, else FALSE
Hinweise: The UdsTransportProtocolHandler will call UdsTransportProtocolMgr::Channel Reestablished() after UdsTransportProtocolHandler::Start() is called and as soon as it detects that the remote client/tester is reachable again.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00326
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00326@rel:R25-11#eaebfef4
Content hash
eaebfef4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00326
Status: valid/unmigrated Version: rel:R25-11#71ce018e Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00326@rel:R25-11#71ce018e
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#eaebfef42026-09-30
  • R19-11rel:R19-11#c295123d2026-10-14
  • R20-11rel:R20-11#3a65f3fb2026-10-14
  • R21-11rel:R21-11#318d3d1b2026-10-14
  • R22-11rel:R22-11#ce8e0b802026-10-14
  • R23-11rel:R23-11#30993c3a2026-10-14
  • R24-11rel:R24-11#a15ad2ab2026-10-14
  • R25-11rel:R25-11#71ce018e2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function Start [SWS_DM_00322] Upstream: RS_Diag_04147, RS_Diag_04168

virtual void Start () noexcept=0;

Start processing the UDS Transport Protocol. Within the implementation there might be some stack specific implementation. The method is asynchronous to allow the DM to start multiple UdsTransportProtocolHandler in parallel to reduce startup time.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: b5781ddbed6c Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode Start der Schnittstelle apext::diag::uds_transport::UdsTransportProtocolHandler startet die Protokollverarbeitung eines UDS-Transport-Plugins im Diagnostic Management (DM) gemäß [SWS_DM_00322]. Sie nimmt keine Parameter entgegen und liefert keinen Rückgabewert. Die Ausführung ist asynchron ausgelegt, damit der DM mehrere Instanzen parallel starten und so die Hochlaufzeit des Gesamtsystems verringern kann ([SWS_DM_00322]). Da die Signatur void deklariert, dürfte die asynchrone Verarbeitung stackspezifisch über interne Hintergrundmechanismen abgewickelt werden. Frage Q-d1023a05a1f3e2ab (offen)

Hinsichtlich des Lebenszyklus (SWS Diagnostics §7.1.1.1 „Initialization, Starting and Stopping of a UDS TransportLayer“, [SWS_DM_00329]) gelten strenge Reihenfolgebedingungen:

  • Vorbedingungen: Vor dem Aufruf muss die Initialisierung über Initialize ([SWS_DM_00319]) zwingend mit dem Ergebnis kInitializeOk abgeschlossen worden sein ([SWS_DM_01746]). Liefert die Initialisierung hingegen kInitializeFailed, bricht der DM den Vorgang ab und darf Start nicht aufrufen ([SWS_DM_01745]).
  • Nachbedingungen: Erst nach erfolgtem Aufruf von Start darf der DM nachgelagerte Funktionen wie Transmit oder Stop auf dem Handler anstoßen ([SWS_DM_01743]). Zudem verarbeitet der DM Benachrichtigungen über ChannelReestablished ([SWS_DM_00313]) ausschließlich dann, wenn Start zuvor ausgeführt wurde ([SWS_DM_01744]), was unter anderem für ECU-Reset-Szenarien mit Wiederverbindung ([SWS_DM_00326]) essenziell ist.

Die Methode ist als noexcept deklariert und somit ausnahmesicher, jedoch explizit nicht threadsicher (not thread-safe) spezifiziert ([SWS_DM_00322]). Aufrufer müssen daher sicherstellen, dass Instanzaufrufe synchronisiert erfolgen.

Dieser Nutzungshinweis wurde automatisch auf Basis der Spezifikationsdaten generiert.

Implementer's Guide folgt (Komplexität I2)

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00322
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00322@rel:R25-11#13806c57
Content hash
13806c57
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00322
Status: valid/unmigrated Version: rel:R25-11#0b2689e0 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00322@rel:R25-11#0b2689e0
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#13806c572026-09-30
  • R19-11rel:R19-11#e7bc57b82026-10-14
  • R20-11rel:R20-11#967d60892026-10-14
  • R21-11rel:R21-11#967d60892026-10-14
  • R22-11rel:R22-11#5752c1402026-10-14
  • R23-11rel:R23-11#9e58e6f32026-10-14
  • R24-11rel:R24-11#dd7836172026-10-14
  • R25-11rel:R25-11#0b2689e02026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function Stop [SWS_DM_00323] Upstream: RS_Diag_04147, RS_Diag_04168

virtual void Stop () noexcept=0;

Method to indicate that this UdsTransportProtocolHandler should terminate. If UdsTransportProtocolHandler has stopped, it shall call UdsTransportProtocolMgr:: HandlerStopped(UdsTransportProtocolHandlerID).

After return from Stop(), the handler-plugin shall NOT call to UdsTransportProtocolMgr with any other method but UdsTransportProtocolMgr::HandlerStopped().

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: e507b828b86b Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode Stop der Schnittstelle apext::diag::uds_transport::UdsTransportProtocolHandler signalisiert einer UDS-Transportprotokoll-Instanz, dass sie terminieren soll [SWS_DM_00323]. Der Aufruf wird vom Diagnostic Management (DM) ausgelöst, sobald dieser in den Zustand ApplicationState.kTerminating wechselt [SWS_DM_00333]. Die Funktion ist parameterlos, besitzt keinen Rückgabewert, ist als noexcept deklariert und als ausnahmesicher (exception safe) spezifiziert [SWS_DM_00323].

Für den Aufrufkontext und die Nebenläufigkeit gelten folgende Bedingungen:

Das Zusammenspiel mit dem DM erfolgt asynchron: Nachdem der Handler seine Netzwerkverbindungen abgebaut und Ressourcen freigegeben hat, muss er den DM über apext::diag::uds_transport::UdsTransportProtocolMgr::HandlerStopped unter Übergabe seiner handlerId benachrichtigen [SWS_DM_00314]. Der DM wartet nach dem Aufruf von Stop zwingend auf diesen Bestätigungs-Callback, bevor er den Prozess endgültig beendet [SWS_DM_00340].

Dieser Text wurde automatisiert auf Basis der Spezifikation AUTOSAR Adaptive R25-11 generiert.

Implementer's Guide folgt (Komplexität I1)

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00323
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00323@rel:R25-11#59af1a9d
Content hash
59af1a9d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00323
Status: valid/unmigrated Version: rel:R25-11#ddd9ac23 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00323@rel:R25-11#ddd9ac23
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#59af1a9d2026-09-30
  • R19-11rel:R19-11#53424cef2026-10-14
  • R20-11rel:R20-11#fe2b5e9c2026-10-14
  • R21-11rel:R21-11#7d886f392026-10-14
  • R22-11rel:R22-11#c94b081a2026-10-14
  • R23-11rel:R23-11#a61d25202026-10-14
  • R24-11rel:R24-11#838592342026-10-14
  • R25-11rel:R25-11#ddd9ac232026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function Transmit [SWS_DM_00327] Upstream: RS_Diag_04147, RS_Diag_04168

virtual void Transmit (UdsMessageConstPtr message, ChannelID channel Id) noexcept=0;

Transmit a UDS message via the underlying UDS Transport Protocol channel.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 5022cdfe42a5 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode Transmit wird aufgerufen, um eine diagnostische UDS-Nachricht über einen spezifischen Kanal des Transportprotokolls an das Netzwerk zu senden ([SWS_DM_00327], SWS Diagnostics §7.1.1.3 „UDS message transmission on a UDS TransportLayer“). Sie bildet den Dienst T_Data.req nach ISO 14229-2 ab ([SWS_DM_00327]). Der Aufrufer übergibt die zu versendende Nachricht als UdsMessageConstPtr im Besitzstil eines unique_ptr sowie die channelId, welche dem Kanal der zuvor empfangenen Anfrage entsprechen muss ([SWS_DM_00327], [SWS_DM_00348], SWS Diagnostics §7.1.1.4 „Channel Notifications“).

In Bezug auf Reihenfolge und Lebenszyklus darf der Diagnostic Manager Transmit erst aufrufen, wenn die Initialisierung des Handlers mit kInitializeOk abgeschlossen wurde ([SWS_DM_01746]) und die Methode Start aufgerufen wurde ([SWS_DM_01743]). Da die Operation als not thread-safe und exception safe spezifiziert ist ([SWS_DM_00327]), dürfte die Koordination paralleler Sendeaufträge der Interpretation nach aufruferseitig im Diagnostic Manager erfolgen müssen. Frage Q-6edd917928b60e55 (offen)

Die Funktion liefert synchron keinen Rückgabewert. Der Transport-Handler ist verpflichtet, den Nachrichten-Zeiger nach der Übertragung asynchron über apext::diag::uds_transport::UdsTransportProtocolMgr::TransmitConfirmation an den Diagnostic Manager zurückzugeben ([SWS_DM_00327], [SWS_DM_00312]). Bei erfolgreichem Versand auf Netzwerkebene wird das Ergebnis kTransmitOk gemeldet, andernfalls kTransmitFailed ([SWS_DM_00351]).

Dieser Verwendungshinweis basiert auf der Spezifikation AUTOSAR Adaptive R25-11.

Implementer's Guide folgt (Komplexität I1)

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messageThe message to be transmitted as a UdsMessage::Ptr (unique_ptr style). UdsTransportProtocolHandler has to give back this Uds Message::Ptr via UdsTransportProtocolMgr::Transmit Confirmation() to signal, that it is done with this message.
channelIdIdentification of channel on which to transmit.

Rückgabewert

TypBeschreibung
None
Hinweise: This transmit API covers T_Data.req of ISO 14229-2[25] Figure 2.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00327
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00327@rel:R25-11#b90d0309
Content hash
b90d0309
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00327
Status: valid/unmigrated Version: rel:R25-11#476973a2 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00327@rel:R25-11#476973a2
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#b90d03092026-09-30
  • R19-11rel:R19-11#000cf4a42026-10-14
  • R20-11rel:R20-11#34d3b7782026-10-14
  • R21-11rel:R21-11#34d3b7782026-10-14
  • R22-11rel:R22-11#24d7a0a92026-10-14
  • R23-11rel:R23-11#a439d8b92026-10-14
  • R24-11rel:R24-11#b3938b682026-10-14
  • R25-11rel:R25-11#476973a22026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function UdsTransportProtocolHandler [SWS_DM_09015] Upstream: RS_Diag_04147, RS_Diag_04168

explicit UdsTransportProtocolHandler (const UdsTransportProtocol HandlerID handlerId, UdsTransportProtocolMgr &transportProtocolMgr) noexcept;

Constructor of UdsTransportProtocolHandler.

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
handlerIdThe handler ID used by DM to identify this handler. This is just a number/identification given by the DM core, when instantiating a UdsTransportProtocolHandler instance, to be able to distinguish it from other handler-plugins or built-in UdsTransportProtocolHandler implementation(s).
transportProtocolMgrReference to UdsTransportProtocolMgr owned by this DM, with which UdsTransportProtocolHandler instance shall interact.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_09015
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_09015@rel:R25-11#caee1970
Content hash
caee1970
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_09015
Status: valid/unmigrated Version: rel:R25-11#a9ed45a3 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_09015@rel:R25-11#a9ed45a3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#caee19702026-09-30
  • R19-11rel:R19-11#986eae482026-10-14
  • R20-11rel:R20-11#b8cc07892026-10-14
  • R21-11rel:R21-11#809c79d52026-10-14
  • R22-11rel:R22-11#a76b2d802026-10-14
  • R23-11rel:R23-11#f807b8cb2026-10-14
  • R24-11rel:R24-11#949b6e802026-10-14
  • R25-11rel:R25-11#a9ed45a32026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function ~UdsTransportProtocolHandler [SWS_DM_09016] Upstream: RS_Diag_04147, RS_Diag_04168

virtual ~UdsTransportProtocolHandler () noexcept=default;

Destructor of UdsTransportProtocolHandler.

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
Exception-Sicherheitexception safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_09016
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_09016@rel:R25-11#698b1dff
Content hash
698b1dff
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_09016
Status: valid/unmigrated Version: rel:R25-11#84d4080f Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_09016@rel:R25-11#84d4080f
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#698b1dff2026-09-30
  • R19-11rel:R19-11#0e5d954f2026-10-14
  • R20-11rel:R20-11#a89192a82026-10-14
  • R21-11rel:R21-11#a89192a82026-10-14
  • R22-11rel:R22-11#e44075962026-10-14
  • R23-11rel:R23-11#6adb5bb12026-10-14
  • R24-11rel:R24-11#5417259f2026-10-14
  • R25-11rel:R25-11#84d4080f2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

Dokumentation der Enumerationen

enumeration InitializationResult [SWS_DM_09017] Upstream: RS_Diag_04147, RS_Diag_04168

enum class InitializationResult :                std::uint8_t {...};

Result of Initialize handler.

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Forwarding-Header#include "apext/diag/diag_fwd.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
SymbolInitializationResult
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kInitializeOk=0 Initialization ok.
kInitializeFailed=1 Initialization failed.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_09017
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_09017@rel:R25-11#6e3b57b4
Content hash
6e3b57b4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_09017
Status: valid/unmigrated Version: rel:R25-11#95d25f6f Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_09017@rel:R25-11#95d25f6f
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#6e3b57b42026-09-30
  • R19-11rel:R19-11#1a1547832026-10-14
  • R20-11rel:R20-11#b70ecaf32026-10-14
  • R21-11rel:R21-11#b70ecaf32026-10-14
  • R22-11rel:R22-11#b70ecaf32026-10-14
  • R23-11rel:R23-11#fa76aad12026-10-14
  • R24-11rel:R24-11#86bf32092026-10-14
  • R25-11rel:R25-11#95d25f6f2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

Dokumentation der Konstanten / Variablen

variable transportprotocolManager [SWS_DM_09025] Upstream: RS_Diag_04147, RS_Diag_04168

UdsTransportProtocolMgr& transportprotocolManager;

The UdsTransportProtocolMgr used/provided by the DM.

Header-Datei#include "apext/diag/uds_transport/protocol_handler.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolHandler
SymboltransportprotocolManager
TypUdsTransportProtocolMgr &
Sichtbarkeitprotected

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_09025
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_09025@rel:R25-11#d765c6b0
Content hash
d765c6b0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_09025
Status: valid/unmigrated Version: rel:R25-11#8f6915d3 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_09025@rel:R25-11#8f6915d3
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#d765c6b02026-09-30
  • R23-11rel:R23-11#a4f7fad02026-10-14
  • R24-11rel:R24-11#3b6191932026-10-14
  • R25-11rel:R25-11#8f6915d32026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill