Делать разную сортировку в зависимости от уровня вложенности мне кажется во-первых, все-таки не логичным, не факт, что пользователи сходу поймут эту хитрую логику, да и смысла особого тут не вижу - хочется видеть новые сверху - так пусть уж вседа будут сверху... Плюс это потребует лишних запросов к БД на каждом этапе обновления дерева, что тоже, не в плюс
В принципе, если честно, я не очень понимаю, принципиальную разницу, между тем, как пробежаться сверху вниз по дереву, освежив память сутью обсуждения и дойдя внизу до самых свежих комментариев, или же увидеть сверху новые комментарии, и затем спуститься вниз, в обратном порядке читая дискуссию... Если честно мне просто второй способ кажется несколько противоестественным. Именно для режима дерева...
Так что в принципе, можно конечно оставить возможность управления сортировкой, но единой для всех уровней. Хорошо, я подумаю над этим.
Далее, применительно к идее первоначально свернутых веток обсуждения и возможности последовательной загрузки уровней по требованию пользователя - в принципе идея не такая уж и плохая, и наверно ее стоит реализовать, но в будущем. Во-первых, просто обойтись добавлением кнопки разворачивания не получится, надо как минимум придумать механизм индикации для пользователя наличия новых сообщений, внутри свернутой ветки, во-вторых надо реализовывать автоматическое разворачивание некоторой ветки, если пользователь попадает на страницу по прямой ссылке на комментарий, в-третьих есть еще целый ряд особенностей. Так что об этом думать буду обязательно, но уже в следующей версии.
Что касается разбиения на страницы - по прежнему считаю это лишним, и реализовывать ни в этой, ни в следующей версии точно не буду. Т.е. до зимы можно этого не ждать, есть более приоритетные задачи, которые хотелось бы сделать к первому дню рождения компонента.
А вообще, спасибо за обсуждение и идеи!