From 65bea633b9b8708b29f7feec5810448a63828352 Mon Sep 17 00:00:00 2001 From: OpeItcLoc03 Date: Thu, 7 May 2026 09:57:33 +0000 Subject: [PATCH] meta(tasks): create [setup-interns-clone-fallback] in claude-skills --- .tasks/STATUS.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index 0b312db..7e1efce 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -676,3 +676,19 @@ NB: эта таска сама уйдёт в следующий cleanup batch (2 --- + +## ⚪ [setup-interns-clone-fallback] — Bug в `setup-interns`: когда source `~/projects/.common/lib/interns-mcp/` отсутствует, скил НЕ клонирует из gitea, а предлагает «initialize from scratch» (создать stub-сервер). Stub-сервер не связан с production-репой → разрыв со всем флотом, агент путает пользователя ложным выбором. + +Воспроизведено 2026-05-07 на свежей Windows-машине (`D:\projects\stostayer.new`): юзер сказал «настрой interns» → агент: «`.common/lib/interns-mcp/` not found in `D:\projects\stostayer.new`. Хочешь, чтоб я инициализировал?». Правильный ответ — clone из gitea, не initialize. + +Pattern для починки уже отработан в `setup-projects-meta`: при отсутствии source клонирует из gitea (см. его SKILL.md, та же фаза), затем продолжает pip install + secrets + register. `setup-interns` эту feature не получил при первой реализации. + +**Связь с `[setup-interns-fix-paths]` (⚪ ready, line 81 в STATUS.md):** там фикс cwd-relative → absolute `~/projects/.common/...`. Этот фикс **делать после** или **вместе с** ним. Иначе clone пойдёт в неправильный относительный путь. + +**Status:** ready +**Where I stopped:** Created 2026-05-07 после incident на stostayer.new. Setup-projects-meta уже имеет clone-fallback (отрабатывал на field-test 2026-05-06 на новом ноуте), setup-interns эту feature не получил при первой реализации (`0eb7dd1 feat(interns-skills-mvp): ship setup-interns + using-interns v0.1.0`). +**Next action:** 1) Сделать вместе с `[setup-interns-fix-paths]` (path-fix предшествует или идёт parallel). 2) В `skills/setup-interns/SKILL.md` найти Phase 1 (source detection / bailout). 3) Заменить bailout на clone-fallback по образцу `setup-projects-meta` (тот же SKILL.md, та же фаза — git clone target + verify pyproject.toml). 4) Auth-fallback: если git clone провалился (нет PAT) — печатать инструкцию по gitea-PAT (settings/applications, scopes read:repository) и pause, как в `.factory/bootstrap.ps1` lines 132-141. 5) Verify после clone: `pyproject.toml` существует в target. 6) Bump version: текущий 0.2.0 → 0.3.0 (MINOR — новая capability). 7) Build + install: `pwsh ./scripts/build.ps1 setup-interns ; pwsh ./scripts/install.ps1 setup-interns`. 8) Smoke-test: удалить `.common/lib/interns-mcp/` локально → `настрой interns` → должно clone + install + register без ручного вмешательства. 9) `tasks_close`. **NB:** одной из шагов смежно может быть закрытие `[setup-interns-fix-paths]` если path-фикс делается в том же коммите. +**Branch:** n/a + + +---