- ReadPPID parses PPid from /proc/PID/status - ResolveWorkspace walks PPID chain (max 20 levels) to find terminal workspace - BuildTerminalWorkspaceMap traverses i3 tree + X11 _NET_WM_PID - RealX11Resolver wraps xgbutil/ewmh for production use - Interfaces I3TreeProvider and X11PIDResolver for testability - Fix unused imports in daemon.go (Rule 3: blocking build)
- TestReadPPID, TestReadPPIDMissing - TestResolveWorkspace, TestResolveWorkspaceNotFound, TestResolveWorkspaceMaxDepth - TestBuildTerminalWorkspaceMapUnit - Add go.i3wm.org/i3/v4 dependency