Highlights of the tail end of your log …
(debug)Uploading RECOVERY
(debug)RECOVERY upload successful
(debug)Ending session...
(debug)ERROR: Failed to receive session end confirmation!
(debug)Releasing device interface...
Then, we see a time gap 16:39:54 to 16:42:15
2024-12-01 16:39:54,400 DEBUG [Thread-244] e.e.i.t.CommandExecutionTask [null:-1]
(debug)Heimdall path: /snap/easy-installer/38/easy-installer-linux-x64/bin/heimdall
2024-12-01 16:42:15,830 DEBUG [JavaFX Application Thread] e.e.i.c.s.CustomExecutableController [null:-1] onContinueClicked
2024-12-01 16:42:16,911 DEBUG [JavaFX Application Thread] e.e.i.c.s.CustomExecutableController [null:-1] onContinueClicked
2024-12-01 16:42:17,137 DEBUG [JavaFX Application Thread] e.e.i.c.s.CustomExecutableController [null:-1] onContinueClicked
2024-12-01 16:42:17,669 DEBUG [JavaFX Application Thread] e.e.i.c.s.CustomExecutableController [null:-1] onContinueClicked
This log reminds me of …
Edit, 24 hours later
I have later noticed that judging by the dates (first 2024-12-02 14:23; “addition” 2024-12-01 16:33) the logs are of different Easy Installer runs. We cannot really draw the earlier posted conclusions …
If you read this thread [Solved] Galaxy S8 does not reboot into e Recovery screen and one or two others linked to it (I was uncertain at the time) but it looked at the time that the recovery was failing to install. This post [Solved] Galaxy S8 does not reboot into e Recovery screen - #21 by Xxpsilon seemed to fit what was being seen.
I think debugging Easy Installer will be more work than learning the official install method Install /e/OS on a Samsung Galaxy S9+ - “star2lte”.
You could always try another run and put the log https://paste.tchncs.de/