mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-10-25 09:41:04 +01:00
A secondary sidebar (company settings, plugin routeSidebar) now ALWAYS collapses the app sidebar to its rail and hides its expand toggle — overriding the user's pin while the route is active — but the force is ephemeral and never mutates the persisted expanded/collapsed preference, so leaving the route restores exactly what the user chose. Previously the collapse was a soft route-request that the user pin won over, so a user who pinned the sidebar expanded saw both sidebars (240+240) on settings/ plugin routes and could not get the intended rail. - SidebarContext: new ephemeral `forceCollapsed` + `collapseLocked`; precedence becomes force > user pin > route request > default. `toggleCollapsed` is a no-op while forced (won't expand or write the pin). - Layout: drives `setForceCollapsed(hasSecondarySidebar)` instead of the soft `setRouteRequestsCollapsed`. - Sidebar: hides the expand/collapse affordance while `collapseLocked`. - Plugin docs (SPEC, authoring guide, SDK README) updated to the hard-force rule. - Tests: context forced-collapse precedence/lock/restore/mobile; Sidebar hidden toggle; Layout mock updated. Co-Authored-By: Paperclip <noreply@paperclip.ing>