I'm still working on niri btw (and using it myself too). Today I finally finished a window layout refactor that was due from very early on.
Now the layout always works correctly, with all the paddings, struts, fullscreen windows and animations. It's tricky because while most of the logic operates only on the "working area" (view excluding struts), fullscreen windows in particular must cover the entire view area, while otherwise acting as just another regular window column.