This is one of those awkward moments...
@D03mpie was right, struts should always be forwarded to KWin and KWin should take responsibility.... always trust KWin for setting struts (0f7a4bcd) · Commits · Plasma / Latte Dock · GitLab fixed in upcoming 0.10.7 .
If struts(AlwaysVisible) mode fails then KWin should take responsibility.