And the ServiceInvoker.deliverSync in case of failure really stores message with classification "DLQ" to the message store.
There is a bug but it may not be the one you are thinking about.
The ServiceInvoker.deliverSync method does send the message to the DeadLetterService but this does not mean that the message is stored with a classification of DLQ. The message can specify a classification as a property in which case this will be used instead.
The bug occurs because the previous action failed (AsyncAction) and this resulted in that message being tagged with a RDLVR classification. Because this tagging was not tidied up all subsequent failures of that message would also be tagged with a RDLVR classification.
If you were to swap the actions in the quickstart then the SyncAction would result in a message going to DLQ but the QS would obviously not work as it currently stands.