Still many things missing:
- Editors other than 3D viewport
- Toggle header visibility is not working correct
- Move editor switch button depending on visibility
- Auto hide when splitting 3D viewport
- Any TODO comments in the code
The buttons organization needs work. In particular grease pencil and sculpt do not have enough space to fit all contents on typical scren resolutions. Tools with more than 1 setting often don't have enough space either and push buttons out of the center.
Some things could move to the lower header perhaps, popover menus and tool settings might be candidates. Some buttons might also not be important enough to require always being visible, and were perhaps added because there was space anyway
The downside is that hiding just the top header would still show too much stuff for secondary viewports. Instead of an option to hide upper and lower headers there could be a switch between full and compact header though, then it makes some sense to hide buttons from both.