The #76535 diff grew session-states.ts past its main-pinned FILE_LINES cap
(3264 > 3226) and its ./projects import pulled store/gateway into every
suite that partially mocks the gateway, killing check:test:ui. Offset per
AGENTS.md: the create→foreground owner-hold block moves to topical sibling
session-owner-holds.ts (moved code keeps its cap), and $projectTree moves
to leaf project-tree.ts so session-states reads it without the gateway edge;
projects.ts re-exports it, so every existing import path is unchanged.