IOS-049 · Обслуживание · Переводчик · web
Исследователь частотных списков: адрес, результаты, порядок подхвата
В работе
P2
ведёт: wordlists
эпик: IOS-044
Суть
ЭТОТ ТИКЕТ — ТОЧКА ПОДХВАТА. Если сессия исследователя умрёт (а она уже умирала дважды),
любой агент обязан суметь продолжить, ничего не переспрашивая. Всё нужное — ниже.
ГДЕ ОН ЖИВЁТ
· Машина: M4, milamarty@192.168.1.114 (только через M1: poolpooly@192.168.1.74)
· tmux-сессия: wordlists, сокет gui
· Подключиться и смотреть/перехватить:
ssh -t poolpooly@192.168.1.74 "ssh -t milamarty@192.168.1.114 '/opt/homebrew/bin/tmux -L gui attach -t wordlists'"
· Прочитать историю без подключения (листается, воркеру не мешает):
ssh poolpooly@192.168.1.74 "ssh milamarty@192.168.1.114 '/opt/homebrew/bin/tmux -L gui capture-pane -p -S -5000 -t wordlists'" | less -R
· Модель: gpt-5.6-sol, усилие high. Рабочий каталог: /Users/milamarty
ГДЕ РЕЗУЛЬТАТЫ (единственное, что имеет значение — сессия одноразовая, файлы нет)
· /Users/milamarty/Downloads/WORDLISTS-RESEARCH.md — исследование: журнал циклов,
сводная таблица источников, проверка пробников, разделы «рекомендация», «перекрытия
и пробелы», «языки, которых нет нигде», «риски лицензий».
· /Users/milamarty/Downloads/fetch-wordlists.sh — загрузчик: один язык = один вызов,
приведение к нашему формату, обязательная проверка однобуквенных токенов, лимит 50 МБ
на загрузку, атомарная запись.
· Пробники исследования занимают около 73 МБ, лежат в его рабочем каталоге.
ЧЕМ ЕГО ДВИГАЮТ (у кодекса НЕТ своего таймера — он встаёт после каждого цикла)
· Будильник: tmux-сессия wl-heartbeat, скрипт /tmp/wl-hb.sh, пинг каждые 15 минут.
· Журнал будильника: /Users/milamarty/wordlists-heartbeat.log — там же видно «СЕССИЯ УМЕРЛА».
· Журнал самой сессии: /Users/milamarty/wordlists-session.log
КАК ПОДНЯТЬ ЗАНОВО, если умер
ssh poolpooly@192.168.1.74 "ssh milamarty@192.168.1.114 'export PATH=/opt/homebrew/bin:$PATH; tmux -L gui new-session -d -s wordlists \"bash /tmp/launch-wl3.sh\"'"
затем проверить `tmux -L gui list-sessions | grep wordlists` (без проверки запуск ничего не доказывает)
и отдать задание: bash /tmp/msg.sh wordlists /tmp/wl-kick.txt
Постоянный бриф: /Users/milamarty/WORDLISTS-BRIEF.md
⚠️ ДВЕ ПРИЧИНЫ, ПО КОТОРЫМ ОН УЖЕ УМИРАЛ
1. Запуск через конвейер в файл (`| tee`) — codex требует терминал на stdout и падает с
«stdout is not a terminal». Логировать ТОЛЬКО stderr через 2>>, как в launch-wl3.sh.
2. Первый запуск умер молча без журнала — поэтому журнал теперь обязателен.
ЧТО УЖЕ ДОБЫТО (чтобы подхватывающий не начинал с нуля)
· Unicode Unilex: 1 000 непустых локалей, 981 базовый язык, частоты на миллиард токенов,
разрешительная лицензия — главный источник покрытия.
· FrequencyWords: 62 непустых языка, код MIT, ДАННЫЕ CC BY-SA 4.0 — атрибуция обязательна.
· wordfreq 3.1.1: 42 языка (наш текущий источник).
· Отдельные академические: SUBTLEX-CH (zh), Lexique (fr), KELLY (sv), Leipzig, TUBELEX.
· ОТВЕРГНУТО с причиной: WorldLex (64 языка, лицензии на данные нет), CEFRLex (запрет
коммерческого использования), frekwencja (109 языков, но только ранги без чисел),
Google Books Ngrams raw (файл русского 1,4 ГБ, временные ряды, не готовый список).
· Загрузчик проверен на четырёх независимых путях; неизвестный язык падает с ошибкой.
ЧТО ОСТАЛОСЬ (помечено TODO в документе)
· итоговая рекомендуемая комбинация источников;
· таблица перекрытий и пробелов по кодам языков;
· список языков, которых нет ни в одном исследованном источнике.
Как воспроизвести
Проверить живость: tmux -L gui list-sessions | grep wordlists. Проверить движение: tail /Users/milamarty/wordlists-heartbeat.log.
Чем закрывается (приёмка)
Любой агент, прочитав ЭТОТ тикет и ничего не спрашивая, может подключиться к сессии, прочитать её историю, найти оба файла результатов, поднять сессию заново после смерти и продолжить с того места, где она остановилась.
Доказательства
На 01:20 файлы существуют: WORDLISTS-RESEARCH.md 44 813 Б (01:15), fetch-wordlists.sh 12 108 Б (01:13). Будильник отправил три пинга: 00:45, 01:00, 01:15.
Связи
- заблокирован (обратная) → IOS-036 — Словари частот: 16 языков готовыми наборами (было 7) · собирать словари руками бессмысленно, пока не закрыт перечень готовых источников
Лента
2026-07-30T01:39:16.280Z · backup-opusРАБОТА ИССЛЕДОВАТЕЛЯ ЗАСТРАХОВАНА ОТ ЕГО СМЕРТИ. Оба результата скопированы В ДВА МЕСТА вне M4: ~/Projects/nc-agent-ops/board/WORDLISTS-RESEARCH.md и fetch-wordlists.sh на M1, плюс ~/Downloads/nc-research-backup/ у owner-а (там же и постоянный бриф). Размер исследования на момент копии — 104 023 байта. Теперь даже полная потеря сессии и каталога Downloads на M4 не уничтожает работу: любой агент берёт копию с M1 и продолжает по этому тикету.
2026-07-30T03:07:38.622Z · вахтёрВоркер wordlists объявил БЛОКЕР или ждёт сборочный слот. Жив, но не продвигается. Последняя строка: gpt-5.6-sol high · ~ Goal achieved (32m)
2026-07-30T03:07:51.428Z · вахтёрВоркер wordlists объявил БЛОКЕР или ждёт сборочный слот. Жив, но не продвигается. Последняя строка: gpt-5.6-sol high · ~ Goal achieved (32m)
2026-07-30T04:23:03.888Z · вахтёрВоркер wordlists объявил БЛОКЕР или ждёт сборочный слот. Жив, но не продвигается. Последняя строка: gpt-5.6-sol high · ~ Goal achieved (32m)
2026-07-30T04:38:10.659Z · вахтёрВоркер wordlists объявил БЛОКЕР или ждёт сборочный слот. Жив, но не продвигается. Последняя строка: gpt-5.6-sol high · ~ Goal achieved (32m)
Воркер
работает
wordlists
M4 · gpt-5.6-sol high
движение в панели: только что
gpt-5.6-sol high · ~ Goal achieved (32m)
Подключиться и смотреть/перехватить руками. Колесо мыши листает; клавишами — Ctrl-b затем [, выход из прокрутки q. Отсоединиться — Ctrl-b затем d:
ssh -t poolpooly@192.168.1.74 "ssh -t milamarty@192.168.1.114 '/opt/homebrew/bin/tmux -L gui attach -t wordlists'"
Прочитать историю панели без подключения — листается и ищется (/ поиск, q выход), воркеру не помешает:
ssh poolpooly@192.168.1.74 "ssh milamarty@192.168.1.114 '/opt/homebrew/bin/tmux -L gui capture-pane -p -S -5000 -t wordlists'" | less -R
Если при входе tmux покажет «.config/tmux/tmux.conf: Permission denied» — нажми q, это косметика: каталог ~/.config на M4 принадлежит root, сессия работает. Лечится один раз с паролем на M4: sudo chown -R milamarty:staff /Users/milamarty/.config && chmod 755 /Users/milamarty/.config
Обновлён
2026-07-30T00:22:17.110Z