diff --git a/CLAUDE.md b/CLAUDE.md index c3dd3e9..aeb8308 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -92,16 +92,17 @@ Module path — `git.vakhrushev.me/av/healthlog`. проходы — агенты `healthlog-review-*`. **Действуем автономно.** Умолчание — делать, а не спрашивать. Вопрос, который -решать не мне, **вынимается блокером** в секцию `блокеры` беклога (что решить, -варианты с ценой каждого, что стоит без решения, рекомендация), задача -переформулируется на остаток, остаток доводится до коммита. Блокеры -разбираются пачками. +решать не мне, **вынимается блокером** в секцию `блокеры` беклога, задача +переформулируется на остаток, остаток доводится до коммита. Блокеры разбираются +пачками; из чего состоит пункт блокера — в +[индексе беклога](docs/backlog/README.md). Спрашиваем только про +**необратимое**: деплой, выкладку наружу, удаление или перезапись данных в +`./data`. **Развилка или блокер — сперва prior art.** Проект не уникален: прежде чем проектировать своё, смотрим, как это решено в референсах [паспорта](docs/passport.md) и в интернете. Готовое решение либо берётся, либо -отвергается с названной причиной — и причина идёт в `architecture.md`. Спрашиваем только про **необратимое**: деплой, выкладку -наружу, удаление или перезапись данных в `./data`. +отвергается с названной причиной — и причина идёт в `architecture.md`. Гейт блокирует: пока `task gate` красный, опиниативные проходы ревью не запускаются. diff --git a/README.md b/README.md index 361d852..9937e87 100644 --- a/README.md +++ b/README.md @@ -6,10 +6,10 @@ ## Зачем -Данные о здоровье и тренировках нужны сразу нескольким приложениям: анализ -здоровья, разбор тренировок, мотиватор по активности. Интегрировать каждое -из них с Health Auto Export по отдельности — значит в каждом писать приём, -дедупликацию и хранение заново. +Данные о здоровье и тренировках нужны сразу трём моим приложениям: агенту-медику +(анализ здоровья), трекеру (разбор тренировок) и игре (мотиватор по активности). +Интегрировать каждое из них с Health Auto Export по отдельности — значит в +каждом писать приём, дедупликацию и хранение заново. healthlog делает это один раз. Телефон шлёт данные в него, все остальные проекты берут данные из него. diff --git a/docs/backlog/README.md b/docs/backlog/README.md index 4c2cea3..c1c57dd 100644 --- a/docs/backlog/README.md +++ b/docs/backlog/README.md @@ -7,9 +7,15 @@ **Блокеры** — вопросы, вынутые из задач. Работа над задачей идёт автономно; если внутри обнаружился вопрос, который решать не мне, он **вынимается** отдельным пунктом сюда, а сама задача переформулируется на остаток и продолжается. Пункт -блокера отвечает на три вопроса: что именно решить, какие есть варианты с ценой -каждого, и что заблокировано, пока решения нет. Разбираются пачками, а не по -одному — прерывать поток ради каждого дороже, чем накопить. +блокера отвечает на четыре вопроса: что именно решить, какие есть варианты с +ценой каждого, что заблокировано пока решения нет, и какая **рекомендация** — +без неё вопрос перекладывается целиком, а решать его всё равно с тем же +контекстом. Разбираются пачками, а не по одному: прерывать поток ради каждого +дороже, чем накопить. + +Варианты ищутся **не с нуля**: сперва prior art — как это решено в референсах +[паспорта](../passport.md) и в интернете, — и только потом своё. Готовое решение +либо берётся, либо отвергается с названной причиной. ## блокеры diff --git a/docs/passport.md b/docs/passport.md index 40ea920..4c4fccb 100644 --- a/docs/passport.md +++ b/docs/passport.md @@ -11,6 +11,17 @@ проект — так, чтобы ни один из них не писал приём, дедупликацию и хранение заново. +**Потребителей три**, и в остальных документах они зовутся так: + +| Как называем | Что это | Что ему нужно от нас | +| --- | --- | --- | +| **агент-медик** | анализ здоровья через MCP | актуальная сводка, влезающая в контекст | +| **трекер** | разбор тренировок | тренировка целиком, с маршрутом и рядом пульса | +| **игра** | мотиватор по активности | шаги и энергия с суточной разбивкой | + +Список закрытый: он определяет, что считать нужным, а что — интересным. Появится +четвёртый — строка добавляется сюда, а не подразумевается. + Цель достигнута, когда одновременно верно: - телефон шлёт непрерывно, и поток не требует внимания неделями;