ensure section ids are unique + tests & docs