feat(private-dev-public-publish): fill skill body + review hardening v0.2.0

Second pass: filled the empty skeleton (When-to-use, Inputs, Steps, Failure
modes, Side effects, What-NOT) from the design archive
(.workshop/.archive/2026-05-29-skill-private-dev-public-publish.md). 0.1.0 -> 0.2.0.

Non-implementer subagent review found 3 findings, all fixed in this same increment:
- Step 5 dev->pub copy had no meta-exclusion -> would leak .wiki/.tasks/CLAUDE.md
  into the PUBLIC fork. Added explicit meta-exclude + .gitignore backstop +
  git-status check, plus a 4th failure mode for the leak.
- pub-folder origin was never established before Step 5 pushed to it -> Step 4 now
  clones the GitHub fork into pub (origin=fork, upstream=canonical).
- Step 3 "same base" was unmechanized -> clone fork, add gitea remote, push base.

Closes review task: all findings filed and resolved; no follow-ups needed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-29 17:07:36 +03:00
parent a079c94a6e
commit 8d7af3212b
2 changed files with 40 additions and 11 deletions

View File

@@ -424,10 +424,13 @@ Findings → follow-up tasks (private-dev-public-publish-<gap>-fix) в claude-sk
**Закрытие:** все findings зафайлены ИЛИ ревьюер подтвердил «нет findings».
**NB семвер:** version 0.1.0 записан промоутером; дальнейшие бампы — владелец claude-skills, не ревьюер.
**Status:** blocked
**Where I stopped:** (not started)
**Next action:** Дождаться 🟢 baseline-тасок + заполнения тела (2-й проход). Прогнать поведенческий smoke-test из description. Findings → follow-up tasks.
**Blocker:** impl-tasks: private-dev-public-publish-install, private-dev-public-publish-hermes-mapping, private-dev-public-publish-test-trigger; ПЛЮС второй проход (заполнение тела каркаса) — без него Steps/Failure modes пусты
**Status:** done
**Where I stopped:** Review прогнан 2026-05-29 свежим non-implementer субагентом против заполненного тела v0.2.0. Вердикт: CHECK 1 (полнота vs архив) PASS, CHECK 2 (executability Steps) FAIL, CHECK 3 (failure modes→abort) PASS, CHECK 4 (What-NOT) PASS, CHECK 5 (description↔body) PASS. **3 findings, все устранены в том же v0.2.0 (некоммиченный инкремент, без двойного бампа):** (1) Step 5 копировал dev→pub без exclusion → утечка `.wiki/`/`.tasks/`/`CLAUDE.md` в публичный форк — добавлен явный meta-exclude + `.gitignore`-backstop + `git status`-чек + новый 4-й failure mode; (2) `origin` pub-папки не заводился до push — Step 4 теперь клонирует форк в pub (origin=fork, upstream=canonical); (3) minor — Step 3 «на той же базе» механизирован (clone fork→add gitea remote→push base). Re-install выполнен.
**Next action:** (none — done; все findings зафайлены и зафиксированы fix'ами; follow-up tasks не требуются)
**Blocker:** (cleared)
**Branch:** n/a
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: OpeItcLoc03/workshop / 2026-05-29T09:45:58.420Z -->
<!-- closed-by: vitya@DESKTOP-NSEF0UK / 2026-05-29 / non-implementer subagent review; 3 findings (meta-leak in copy, undefined pub origin, unmechanized base) all fixed in v0.2.0 -->
**Branch:** n/a
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: OpeItcLoc03/workshop / 2026-05-29T09:45:58.420Z -->