Is there any official guide to how this works? It seems as if the player with least progress needs to host, then both will progress -- but does it apply to sidequests? What about items, earned XP and skill points?
According to this comment on reddit, story progress is saved for both users as long as you are both in the same spot in the story, or the host is further behind in the story. Inventory, collectibles and skill-trees are always carried back to your game. To reiterate the example from Reddit,
your story % is at 15%, host you are playing with is at 16%+, as long as you are in their game, your story remains same as theirs, so you can together progress. However whenever you go back to your game, your story will go back to 15%, this is because you played with host who had their story farther than you. So in this case, you need to be the host, this'll cause both you and your progression to save.
Dying Light 2
This article from PC Gamer has a good explanation for Dying Light 2's systems. In short, the host keeps all progression. The player that joined only keeps weapons, gear, XP, skill, and cash progression. Any mission and story progression is not carried back regardless of their current progress in the story.