Given the following minimal example
\documentclass[parskip=full]{scrreprt}
\usepackage[onehalfspacing]{setspace}
\usepackage{enumitem}
\usepackage{lipsum}
\setlist{
parsep=\parsep,
itemsep=-.5\parsep,
topsep=-.5\parsep,
partopsep=.5\parsep
}
\begin{document}
\lipsum[1]
\begin{itemize}
\item list
\item between
\item paragraphs
\end{itemize}
\lipsum[2]
\begin{itemize}
\item list
\item in
\item own
\item paragraph
\end{itemize}
\lipsum[3]
\begin{itemize}
\item list
\item above
\item paragraph
\end{itemize}
\lipsum[4-5]
\end{document}
The first and second lists are spaced as expected, with the second list spaced as an individual paragraph (compare with last two paragraphs). However, the third list is spaced in the same way as the first one, even though it is followed by an unrelated paragraph.
This answer states that \partopsep is added above and below a list environment if it begins a new paragraph.
Is there a (reasonably simple) way to get a \partopsep added only to the bottom if a list environment is followed by a new paragraph?

\vspace– Joe Mar 04 '19 at 14:54\@doendpeis used for many things. So you have to restrict it to lists somehow and extra calculations have to be done at the start of the list. – David Purton Mar 04 '19 at 15:04