Skip to content

fix(site): the registry page is printed without internal words - #327

Merged
the-homeless-god merged 2 commits into
devfrom
a/registry-page-without-internal-words
Oct 7, 2026
Merged

the-homeless-god merged 2 commits into
devfrom
a/registry-page-without-internal-words

Conversation

@the-homeless-god

Copy link
Copy Markdown
Member

Задача 2325 (её файл пока лежит на незалитом PR #322, см. последний раздел).

Сторож жаргона отказывал на четырёх читательских страницах. Правка нужна была
в печатнике, а не на страницах: обе половины страницы реестра печатает
scripts/site/registry-page.fscript, и правка в самом файле уехала бы при
следующей перепечатке.

Что было и что стало — прогоном jargon:check

файл было стало
docs/site/registry.md 10 0
docs/site/registry.ru.md 9 0
docs/site/packages.md 1 0
docs/site/packages.ru.md 1 0
всего 21 0

Числа «было» сошлись с числами соседа из задачи 2325 знак в знак.

Какие слова и на что заменены

  • «ведомость» / «ledger» → «список» / «list». ADR-0059 называет предмет
    ведомостью имён, и внутри проекта это слово короче и точнее; на странице, куда
    приходят за языком, оно требует знания нашей кухни. «Список имён» говорит то
    же и сноски не требует. Заменено в восьми местах русской половины и в семи —
    английской, все в печатнике.
  • «byte for byte» → «unchanged». Сам сторож просит сказать это словами, а не
    термином.
  • packages.ru.md и packages.md пишутся руками, не печатаются, — их по одному
    слову поправлены на месте.

Чего делать НЕ пришлось

Ни одного исключения в docs/jargon.json не добавлено, ни одна страница не
переведена в список «вне запрета». Сторож сам затирает адреса ссылок
(«Проза маркдауна» → «Снять цели» от ](), поэтому имя файла решения в
ссылке [ADR-0059](../adr/0059-the-registry-is-a-ledger-…md) не считалось
никогда. Это замерено, а не принято на веру: сторож перечисляет строки 3, 7,
12, 27, 43, 49, 63, 74 у registry.md и ни разу не строку 10 — ту, где ссылка.
(Первая редакция этой ветки добавляла два исключения; они оказались лишними и
сняты.)

Отрицательный контроль

Одно внутреннее слово возвращено в печатник (строка итога, «Записей в списке» →
«Записей в ведомости»), страница перепечатана прогоном:

Сторож жаргона ОТКАЗЫВАЕТ. Беды:
  · docs/site/registry.ru.md: внутренних слов 1, дозволено 0. Лишние:
      строка 62: «ведомост» → отчёт о доказательствах
…
всего бед: 7          (было 6)

Код диагностики FLANG_ZHARGON. Подлог снят, печатник и обе половины страницы
сошлись с копиями, снятыми до подлога, по cmp — знак в знак.

Прочие прогоны

что ответ
flang check scripts/site/registry-page.fscript функций 92, из них с доказанным завершением 92; замечаний нет
flang lint того же файла max-line-length 120: 0; max-conditional-depth 2: 0
registry:page Напечатано: записей 7, обе половины страницы; отпечатки сошлись у всех, код 0
таблица страницы = список в дереве diff после трёх замен sed: расхождений 0, строк 7
node docs/site/build.mjs --check страниц 833, битых ссылок 0; пар не хватает 0

--no-verify не применялся: заслоны перед коммитом (no-growth, lint-growth,
commit-msg) и перед пушем прошли как есть.

Чего эта ветка НЕ закрывает, и это важно

jargon:check на этой ветке всё ещё отказывает — 6 бед в шести файлах, и ни
одного из них ветка не трогает: docs/site/roadmap.ru.md,
docs/course/03-totality.md, docs/course/09-eight-targets.md,
docs/course/13-where-next.md, docs/guide/how-to-write-flang.ru.md,
flang/src/emit/c/flang_repl.c. Эти шесть закрывает PR #322, которого в
dev пока нет.

Проверено на объединённом дереве (PR #322 + эта правка): сторож отвечает
кодом 0 —

Сторож жаргона: поверхностей 157, внутренних слов 992
(долг по 34 файлам, расти не имеет права), новых 0.

То есть шаг «Check jargon» работы uncalled-guards зеленеет ровно тогда, когда
влиты оба запроса; порядок вливания любой.

Задача 2325

Файл docs/tasks/2325-the-registry-page-is-printed-with-internal-words.md лежит
на ветке PR #322 и в dev ещё не вливался. Своей копии я не завожу: два
добавления одного пути дадут конфликт на вливании второго запроса. После
вливания #322 в задаче надо поправить две строки:

исполнитель: a
ветка: a/registry-page-without-internal-words

@the-homeless-god
the-homeless-god force-pushed the a/registry-page-without-internal-words branch from 663238e to 1f1b4da Compare October 7, 2026 21:01
the-homeless-god and others added 2 commits October 7, 2026 21:46
Task 2325. The jargon guard refused on four reader pages, and the words
could not be fixed on the pages themselves: both halves of the registry
page are printed by scripts/site/registry-page.fscript, so an edit in the
file would be lost at the next printing. The words are fixed in the
printer; the pages are then reprinted by a run.

What was and what is, measured by the guard itself
(bootstrap/flang run-script jargon:check):

  docs/site/registry.md       10 internal words -> 0
  docs/site/registry.ru.md     9 -> 0
  docs/site/packages.md        1 -> 0
  docs/site/packages.ru.md     1 -> 0

The words and what replaced them:

* the Russian word for a ledger, and "ledger" itself, give way to the
  Russian and English words for a list. The decision ADR-0059 calls the
  thing a ledger of names, and inside the project that word is shorter and
  sharper; on a page read by someone who came for the language it requires
  knowing our kitchen. A list of names says the same and needs no footnote.
* "byte for byte" gives way to "unchanged". The guard asks for this one in
  words, not as a term.

The packages pages are written by hand, not printed, so their one word
each is fixed in place.

No exception was added to docs/jargon.json and no page was moved into the
list of surfaces the guard skips. The guard already blanks link targets,
so the name of the decision file in the ADR link was never counted -- that
is measured, not assumed: the guard lists lines 3, 7, 12, 27, 43, 49, 63
and 74 of registry.md and never line 10, which is the line with the link.

Negative control. One internal word was put back into the printer, in the
line that counts the records, and the page reprinted: the guard went from
6 faults to 7 and named the planted place -- registry.ru.md, one internal
word where none is allowed, line 62. Restored, and the printer and both
halves of the page compare equal to the copies taken before the forgery.

The guard still refuses on this branch, with 6 faults in six files none of
which this branch touches: the roadmap page, three chapters of the course,
the guide on how to write flang, and flang_repl.c. Those six are closed by
PR 322, which is not in dev yet. On a tree that is PR 322 plus this change
the guard answers with exit code 0 and says it looked at 157 surfaces, saw
992 internal words all of them on the debt list of 34 files, and found 0
new ones.
The registry printer now writes the two halves of the registry page
without internal words, and the two packages pages were fixed by hand,
so each of the four pages has zero internal words. The jargon guard
refuses when a file's count falls below its recorded debt, so the four
rows are removed from docs/jargon.json.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PNHrA3rG7FTWhB11E7pjDQ
@the-homeless-god
the-homeless-god force-pushed the a/registry-page-without-internal-words branch from 1f1b4da to f072671 Compare October 7, 2026 22:06
@the-homeless-god
the-homeless-god merged commit 1a570ab into dev Oct 7, 2026
30 of 31 checks passed
@the-homeless-god
the-homeless-god deleted the a/registry-page-without-internal-words branch October 7, 2026 22:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant