Правильно пишется "общественно полезный".
Для понимания правильного написания этого словосочетания следует обратить внимание на то, что в русском языке при объединении двух слов через дефис принято оставлять пробелы между словами. Дефис используется для выделения составных слов и словосочетаний, которые имеют специфический смысл, отличающийся от значений, которые имеют эти слова по отдельности.
В данном случае, слово "общественно" выступает в роли прилагательного, которое определяет природу или характер местительного существительного "полезный". Объединение этих слов в одно словосочетание "общественно полезный" позволяет передать идею о том, что данное действие или предмет приносит пользу обществу в целом.
Обратное написание "общественно-полезный" может вызвать некоторую путаницу, так как дефис в данном случае дает словосочетанию другое значение. В данном случае, "общественно-полезный" можно воспринять как "полезный для общества", а не "полезный и общественный вместе".