Give the anchor lint an uncapped tally by target root, because a zone counting its own red anchors by grep hits the output cap and reads zero, and put PD-438 under the heading its weight names
This commit is contained in:
parent
3839a86f65
commit
ce612a2a19
2 changed files with 38 additions and 12 deletions
|
|
@ -632,6 +632,19 @@ def main() -> int:
|
|||
print(" ✗ " + msg)
|
||||
if len(problems) > CAP:
|
||||
print(f" … ещё {len(problems) - CAP} не показано (кап вывода {CAP}, сначала тяжёлые)")
|
||||
# ⚠ РАЗБИВКА, КОТОРАЯ НЕ КАПИТСЯ — и она здесь не для красоты. Зона считает «сколько красных
|
||||
# целят в меня» грепом по строкам «✗», а их печатается не больше CAP, поэтому хвост уезжает
|
||||
# под черту МОЛЧА и грep возвращает ноль там, где хитов восемь. Так и случилось 04.09:
|
||||
# платформенная сессия доложила «в моей зоне красных нет», проверив обрезанный вывод.
|
||||
# Строка ниже считает ВСЕ проблемы по КОРНЮ ЦЕЛИ якоря, независимо от капа.
|
||||
by_target = {}
|
||||
for _, msg in problems:
|
||||
m = re.search(r"якор[ья] `([^`:]+)", msg) # «якорь …» и «токен якоря …» — обе формы
|
||||
root = m.group(1).split("/")[0] if m else "?"
|
||||
by_target[root] = by_target.get(root, 0) + 1
|
||||
if by_target:
|
||||
parts = " · ".join(f"{k} {v}" for k, v in sorted(by_target.items(), key=lambda kv: -kv[1]))
|
||||
print(f" по КОРНЮ ЦЕЛИ (не капится, считай зону отсюда, а не грепом по ✗): {parts}")
|
||||
print(f"\n--lint: {len(problems)} проблемных якорей в {tally['files']} живых доках")
|
||||
# ⚠ Норма «гейт печатает, чего он НЕ проверяет» (D39.153 п.9г). Прежняя редакция молча
|
||||
# проверяла только существование файла и переполнение номера — и дала ЗЕЛЁНЫЙ на четыре
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
Loading…
Add table
Reference in a new issue