From b20ea8a463b65fa0bd071a9e9e0a33f33da5e611 Mon Sep 17 00:00:00 2001 From: vitya Date: Thu, 7 May 2026 13:26:56 +0300 Subject: [PATCH] meta(tasks): close [setup-interns-fix-paths] + [setup-interns-clone-fallback] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both tasks shipped in 54ba5ca (path fix + clone fallback) and 90d066b (monorepo clone correction — interns-mcp is a subdir of common, not a separate repo). Co-Authored-By: Claude Opus 4.7 --- .tasks/STATUS.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index 5b04647..a65f960 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -80,12 +80,12 @@ _Updated: 2026-05-07 (bootstrap-fix-tdd-recommend-template + bootstrap-upgrade-c --- -## ⚪ [setup-interns-fix-paths] — fix `/.common/...` cwd-relative paths in `setup-interns` SKILL.md (mirror of done `using-projects-meta-fix-paths`) -**Status:** ready -**Where I stopped:** (not started) — surfaced 2026-05-06 during factory-bootstrap field-test on fresh Win11 laptop. `/setup-interns` Phase 1 stopped with "`.common/lib/interns-mcp/` not found" because claude was launched from `C:\Windows\System32` (cwd inherited). The skill resolves all `.common/` paths relative to cwd. Sister skill `setup-projects-meta` uses absolute `~/projects/.common/...` (fixed in [using-projects-meta-fix-paths]) — `setup-interns` is the next inconsistency. Field-test workaround: `cd $PROJECTS_DIR` before launching claude. -**Next action:** in `setup-interns/SKILL.md` Phase 0/1/2/3/4/5/6/7 — replace every `/.common/...` with `~/projects/.common/...` (POSIX-absolute, matches `setup-projects-meta` after the [using-projects-meta-fix-paths] fix). Audit Bash blocks too. Bump `setup-interns` version (PATCH — doc consistency, no behavior change). Rebuild `dist/setup-interns.skill`, install to `~/.claude/skills/setup-interns/`, verify `version` on disk. Long-term: factor `~/projects` out into `$FACTORY_PROJECTS_DIR` (read from `~/.config/factory/home.toml`) once `factory` CLI lands — track separately. Field-test artefact: `.factory/L0/install-log.md` шаг 11c-2 в gitea `OpeItcLoc03/factory`. +## 🟢 [setup-interns-fix-paths] — fix `/.common/...` cwd-relative paths in `setup-interns` SKILL.md (mirror of done `using-projects-meta-fix-paths`) +**Status:** done +**Where I stopped:** Shipped в `54ba5ca`. All `/.common/...` replaced with `~/projects/.common/...` across Phase 0–8, rollback, cross-platform notes, and common mistakes. Mirrors setup-projects-meta absolute-path convention. Bumped version 0.2.0 → 0.3.0 (MINOR — includes clone-fallback capability from sibling task). Rebuilt `dist/setup-interns.skill` + installed to `~/.claude/skills/setup-interns/`. +**Next action:** (none — kept until merged) **Branch:** master - + --- @@ -677,7 +677,7 @@ NB: эта таска сама уйдёт в следующий cleanup batch (2 --- -## ⚪ [setup-interns-clone-fallback] — Bug в `setup-interns`: когда `~/projects/.common/lib/interns-mcp/` отсутствует, скил НЕ ensure-ит `.common`-репу из gitea, а предлагает «initialize from scratch» (создать stub-сервер). Stub-сервер не связан с production-кодом → разрыв со всем флотом. +## 🟢 [setup-interns-clone-fallback] — Bug в `setup-interns`: когда `~/projects/.common/lib/interns-mcp/` отсутствует, скил НЕ ensure-ит `.common`-репу из gitea, а предлагает «initialize from scratch» (создать stub-сервер). Stub-сервер не связан с production-кодом → разрыв со всем флотом. Воспроизведено 2026-05-07 на свежей Windows-машине (`D:\projects\stostayer.new`): юзер сказал «настрой interns» → агент: «`.common/lib/interns-mcp/` not found, хочешь инициализировать?». Правильный ответ — ensure `.common` репа клонирована/свежая, **не initialize**. @@ -695,6 +695,11 @@ Pattern для починки в `setup-interns/SKILL.md`: **Bonus discovery:** `.factory/factory.yaml` lines 41-46 объявляет `interns-mcp` как **отдельный component с url `{git_host}/{git_org}/interns-mcp`** — это **тоже неверно** (репа interns-mcp на gitea не существует, только subdir в `.common`). Стоит завести отдельную fix-таску в `.factory` (не в этой репе) на корректную манифест-схему — либо source как path внутри другой репы, либо component definition пересмотреть. +**Status:** done +**Where I stopped:** Shipped в `54ba5ca` + `90d066b`. v0.3.0: replaced "stop — initialize first" with clone-fallback from `OpeItcLoc03/common` monorepo (NOT a separate `interns-mcp` repo — it's a subdirectory). Phase 1 checks `~/projects/.common/.git` existence; Phase 4 does `git pull --ff-only` (stale clone) or `git clone .../common.git` (fresh). Path fix (cwd-relative → absolute `~/projects/.common/...`) applied simultaneously. Common mistakes + Out of scope updated for monorepo. Rebuilt + installed. +**Next action:** (none — kept until merged) +**Branch:** master + Воспроизведено 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 не получил при первой реализации.