Это, конечно, ненаучная работа. Потому что в результате неё никаких законов открыто не будет.
Тем более, зачада решенная уже в продуктах Микрософта (например Оффисе) много десятилетий назад. Но важно помнить, что “где-то у них” не означает, что такое же доступно у нас. И нигде такое не купишь, и никак его не найдёшь.

Некоторые говорят - а ты посмотри внимательно на тот пример, который ты приводишь. В нём уже есть элементы
<li>которые размечают список полностью по аналогии с твоими элементами. И каждый браузер после этого отлично всё нумерует, если тип списка с ul на ol поменять. То есть задача не то что “решенная в крупных проприертарных текстовых редакторах”, а “решенная много-много раз, в большом количестве софта, в том числе опенсорсного”.Дело в том, что в этом обсуждении задача не описана. Я под задачей понимаю одно, а читающий меня под задачей понимает что-то своё, что ему удобнее. А для того, чтобы задачу описывать, как раз и нужны разные слова, термины и определения к ним.
Простой среднеподразумеваемый браузер автоматизирует присвоение номеров элементам списка, это верно. Но сама по себе задача, которую он решает - отображение списка, это не та задача, которую я имею в виду. Я имею в виду итеративную разработку текста документа, который отображается. Актуальность это приобрело посте 2017 года, когда появились большие языковые модели (БЯМ). Такая модель тоже может перенумеровать пункты внутри себя и сказать что-то вроде “у тебя семнадцатый елемент списка требует такой-то доработки (содержит опечатку, например)”. И вот человек смотрит на список HTML-элементов, а номеров-то и не видит!
Моё решение с переводом ol-списков в ul-списки позволяет сделать номера строк видимыми (явными), а дополнительная разметка может позволить различать списки между собой, если эту дополнительную разметку лушче продумать. Проблема в том, что я не в курсе, какими русскими словами про это думают. Вы вот видели книгу с заголовком “компьютерная обработка списков, термины, определения и теория”?