The AddonCompartmentFrame's UpdateDisplay method has an explicit self:Show()
The initial UpdateDisplay happens in the PLAYER_ENTERING_WORLD event which runs after PLAYER_LOGIN.
It will do and additonal UpdateDisplay for each registerd addon including those that are Load-On-Demand (LOD) which can be loaded at any time during a session.
Try replacing
AddonCompartmentFrame:Hide() with
Lua Code:
AddonCompartmentFrame:HookScript("OnShow", function(self)
self:Hide()
end)