[2026-10-10] eagle: personal/projects/personal-os/personal-os-data-analysis-workflow-2026-10-09.md personal/projects/personal-os/personal-os-rlm-stand-results-2026-10-10.md
This commit is contained in:
1 parent
ecf145bf8d
commit
1c4f4e925c
2 files changed
+89
No files matched your search
@@ -217,6 +217,8 @@ Graphiti передаёт при извлечении отношений пре
|
||||
|
||||
### 9.1a. Дополнение 2026-10-10 (вечер): выборка и первый прогон на рабочих данных
|
||||
|
||||
Полные результаты обоих прогонов, ошибки и решения: [[personal-os-rlm-stand-results-2026-10-10]].
|
||||
|
||||
- Выборка подготовлена: 14 связных работ из `personal_os` (855 задач, 10 603 stories, 195 ссылок на PR) плюс Mattermost (1 465 сообщений за 1–9 октября), 7 транскриптов Zoom, 71 строка `activity_daily` и 9 daily briefs. Каталог `tools/rlm-lab/datasets/private/sample-2026-10-10/`, экспорт `scripts/rlm-sample-export.js`. Состав — предложение, не утверждён.
|
||||
- Первый прогон на одной работе (Duck.ai → меню приложения, контрольный случай без упоминания Алекса): шесть RLM-прогонов на Qwen27B и Coder30B не дошли до FINAL; одиночный вызов с заранее собранным контекстом на Qwen27B дал проверяемый JSON (10/10 улик по gid подтверждены, одно перепутанное авторство, завышено состояние «released»). Детали, исправления стенда и выводы: `tools/rlm-lab/datasets/private/sample-2026-10-10/eval/report-2026-10-10.md`.
|
||||
- Исправлено в стенде: падение mlx_lm на tool-call токене (обёртка `backend.py`), таймауты и бюджеты вызовов подняты (`config.json`). Шаг 9.2.3 и 9.2.4 ниже остаются актуальными; шаг 9.2.1 выполнен в части подготовки, выбор состава за Алексом.
|
||||
|
||||
@@ -0,0 +1,87 @@
|
||||
---
|
||||
date: '2026-10-10'
|
||||
status: results
|
||||
tags:
|
||||
- personal-os
|
||||
- data-analysis
|
||||
- rlm
|
||||
- evaluation
|
||||
---
|
||||
# Personal OS — результаты первых прогонов на рабочих данных (2026-10-10)
|
||||
|
||||
Продолжение [[personal-os-data-analysis-workflow-2026-10-09]], раздел 9. Здесь зафиксировано, что было сделано, что получилось, где модель систематически ошибается и что из этого следует. Исходные файлы прогонов, эталоны и отчёты на английском: `tools/rlm-lab/datasets/private/sample-2026-10-10/` в репозитории personal-os (каталог вне git).
|
||||
|
||||
## 1. Выборка
|
||||
|
||||
Скрипт `scripts/rlm-sample-export.js` читает `personal_os` (localhost, E1-restore) и собирает пакет на каждую корневую задачу: родители, подзадачи до глубины 4, зависимости на один шаг, задачи по ссылкам из текста, memberships, stories без лайков и реакций, ссылки на PR и gid из текста, хеши и времена. Модуль `scripts/rlm-sample-sources.js` добавляет общие источники.
|
||||
|
||||
| Что | Объём |
|
||||
|---|---|
|
||||
| Работ | 14 (состав предложен, не утверждён) |
|
||||
| Задач в снимке | 855 |
|
||||
| Stories после фильтра | 10 603 |
|
||||
| Ссылок на PR в тексте | 195 |
|
||||
| Mattermost | 1 465 сообщений, 1–9 октября, chat.duckduckgo.com и mm.qentra.top |
|
||||
| Zoom | 7 транскриптов, 29 сентября – 6 октября |
|
||||
| activity_daily | 71 строка, апрель–июнь |
|
||||
| daily briefs | 9 файлов, июнь |
|
||||
|
||||
Пробелы: таблиц GitHub в `personal_os` нет, PR только как URL из текста; задачи релизов в выборке отсутствуют; у Fire Button нет родителя в БД; у Tab.swift не хватает 7 подзадач. Mattermost привязывается только по явному gid/PR, совпадения есть у одной работы (VSCode-миграция). Zoom, activity и briefs в анализ не входят, в снимке они пока балласт.
|
||||
|
||||
## 2. Первый прогон: RLM на одной работе
|
||||
|
||||
Работа: Duck.ai → пункт «AI Settings» в меню приложения, контрольный случай «AI Chat задевает главное окно без упоминания Алекса». Эталон написан до запуска по оригиналам.
|
||||
|
||||
| Режим | Исход | Время |
|
||||
|---|---|---|
|
||||
| RLM Qwen27B ×2 | падение mlx_lm на tool-call токене; таймаут API | 42 с, 121 с |
|
||||
| RLM Qwen27B | 8 вызовов на чтение, FINAL нет | 288 с |
|
||||
| RLM Qwen27B | несколько repl-блоков в ответе, повторяется; остановлен | ~16 мин |
|
||||
| RLM Qwen27B | один блок соблюдён, с шага 12 цикл; 24 вызова, FINAL нет | 694 с |
|
||||
| RLM Coder30B | каждый ответ упирается в 2048 токенов, ничего не выполнено | 943 с |
|
||||
| Один вызов Qwen27B с собранным контекстом | валидный JSON | 138 с |
|
||||
| Один вызов Coder30B | валидный, тонкий | 25 с |
|
||||
|
||||
Вывод: RLM на этих моделях без thinking не сходится даже на работе в 79 KB; одиночный вызов даёт проверяемый результат. Модель нашла факт, пропущенный в ручном эталоне: 5 октября Alex M упомянул задачу из задачи релиза 1.210.0. Эталоны надо сверять скриптами.
|
||||
|
||||
Исправления стенда: `backend.py` отключает разбор tool-call в mlx_lm; таймауты и бюджеты вызовов подняты в `config.json`; добавлен `baseline.py`.
|
||||
|
||||
## 3. Второй прогон: один вызов, схема v2, четыре работы
|
||||
|
||||
Схема v2: утверждения о состоянии (proposed, decided, implemented, approved, released, cancelled, open, blocked) с уликой и флагом confirmed; хронология с уликами; люди; Алекс (mentioned, assignee, author, responsible, intersection_kind); ссылки; неизвестности. Контекст собирается `tools/rlm-lab/build_input.py`: корень полностью, у подзадач только комментарии, назначения, завершения, переименования и всё, где автор Алекс; бюджет 160 тысяч символов.
|
||||
|
||||
| Работа | Prompt токенов | Время | JSON | Улики найдены |
|
||||
|---|---:|---:|---|---|
|
||||
| Duck.ai entry point | 9 682 | 146 с | валидный | 19/19 |
|
||||
| Fire Button (Алекс DRI) | 49 814 | 489 с | валидный | 23/23 |
|
||||
| VSCode migration (Алекс DRI, открыта) | 51 814 | 490 с | валидный | 15/15 |
|
||||
| Prevent accidental quit (Алекс DRI) | 65 544 | 611 с | валидный | 23/23 |
|
||||
|
||||
Первая попытка батча потеряна из-за лимита 2048 токенов ответа и таймаута 600 с; подняты до 8192 и 1800 с. Prefill ≈ 110–160 ток/с, это главная статья времени.
|
||||
|
||||
Что верно во всех четырёх: ни одной выдуманной улики; роли Алекса совпали с посчитанной из записей истиной (owner на трёх, awareness на Duck.ai); хронологии с правильными датами; отмены ловятся, когда о них сказано прямо; Mattermost использован там, где привязан; неизвестности осмысленные.
|
||||
|
||||
Две системные ошибки:
|
||||
|
||||
1. **Релиз помечен как подтверждённый** на 3 работах из 3 продуктовых. Улика: движение по release board или бот-запись «упомянута в задаче релиза». У Duck.ai задачу вернули в Pre-release Validation 6 октября; у accidental quit выдуман релиз iOS из тега. Флаг confirmed не помогает: true в 30 из 31 утверждений.
|
||||
2. **Закрытая подзадача прочитана как реализация.** VSCode: «CoreData мигрирован на code-initialized модели [confirmed]» по завершённой подзадаче, которая на деле отменена, потому что Xcode 27 собирает модели как есть. Та же ошибка project truth, что записана в README проекта 4 октября.
|
||||
|
||||
Прочие пропуски: у Duck.ai нет ранней реализации PR 5553 и правила про ship review; у Fire Button не отмечен отсутствующий родитель и блокировка Sites-секции FE-задачей; у VSCode смешаны устаревший «[ON HOLD]» и сентябрьский перезапуск.
|
||||
|
||||
## 4. Хранение
|
||||
|
||||
Миграция `migrations/007_work_claims_pilot.sql` применена к `personal_os`: `work_analysis_runs` и `work_claims` (статус candidate/accepted/rejected, evidence_ref, evidence_found, model_confirmed). Загружено 4 прогона, 212 утверждений, 80 из 80 улик найдены. Это кандидаты; приёмка по дизайну [[personal-os-evidence-graph-design-2026-10-04]] не реализована.
|
||||
|
||||
## 5. Что этот блок делает и чего не делает
|
||||
|
||||
Делает: разбор одной корневой задачи с поддеревом в проверяемые утверждения с уликами. В будущей схеме это компонент, вызываемый на каждую работу из батча по архиву или по изменению из incoming.
|
||||
|
||||
Не делает: привязку к другим работам, пересечения со сферой Алекса без явных ссылок, использование Zoom и несвязанных сообщений, поиск по корпусу. Для этого нужен следующий блок: явные связи по всему корпусу в таблице рёбер, кандидаты через соседей и поиск, второй дешёвый вызов на пару «работа ↔ кандидат».
|
||||
|
||||
## 6. Решения и следующие шаги
|
||||
|
||||
- Извлечение одним вызовом принято как рабочий режим для разбора работы; RLM откладывается до этапа поиска по архиву.
|
||||
- Две системные ошибки лечатся правилами в коде поверх `work_claims`, не промптом: релиз только по задаче релиза с версией в корпусе, иначе suggested; завершённая подзадача даёт closed, реализация требует merge или прямого утверждения, пометка об отмене переводит в cancelled.
|
||||
- Задачи релизов нужно добавить в выборку.
|
||||
- Графовые продукты для этого шага не нужны; Cognee и Graphiti остаются вопросом для поиска между работами.
|
||||
- Цена: 4 работы ≈ 29 минут модели; 60–100 эпизодов это 7–12 часов батчем на этой машине.
|
||||
Reference in new issue
Block a user