feat(project-bootstrap): canonical template + Step 5.6 add session-handoff trigger [v1.12.0]

CLAUDE.md.template gains `session handoff: read on start, write on end`
between `pull remote before work` and `follow project discipline`
(session-lifecycle clustering). Step 5.6 trigger->fulfiller table gains
the corresponding row (template ↔ table source-of-truth invariant).

Greenfield-bootstrap'ed projects now ship handoff trigger из коробки.
Existing projects unaffected — CLAUDE.md merge in Step 5 is idempotent
and respects user removals.

Bump 1.11.0 -> 1.12.0 MINOR (new canonical trigger = new capability,
backward-compatible). dist/project-bootstrap.skill rebuilt.

Closes [session-handoff-bootstrap-template-extend].
Unblocks [session-handoff-existing-projects-upgrade] Path B.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-24 23:10:03 +03:00
parent 90c5be7c88
commit 01bc7147c9
5 changed files with 44 additions and 11 deletions

View File

@@ -1,5 +1,5 @@
# Task Board # Task Board
_Updated: 2026-05-24 (session-handoff-install закрыт 🟢 — fix description YAML `: ` ambiguity, bump 0.2.0→0.2.1, reinstall, listing рендерит полный description.)_ _Updated: 2026-05-24 (session-handoff кластер: install + bootstrap-template-extend 🟢; project-bootstrap 1.11→1.12.)_
<!-- <!--
Canonical layout. One block per task. Per-task deep context lives in Canonical layout. One block per task. Per-task deep context lives in
@@ -1403,21 +1403,18 @@ Substantive-commit hook тест:
--- ---
## [session-handoff-bootstrap-template-extend] — Расширить project-bootstrap canonical CLAUDE.md template новой trigger-строкой: `session handoff: read on start, write on end`. Чтобы новые проекты, инициализированные через `project-bootstrap`, автоматически включали handoff из коробки. ## 🟢 [session-handoff-bootstrap-template-extend] — Расширить project-bootstrap canonical CLAUDE.md template новой trigger-строкой: `session handoff: read on start, write on end`. Чтобы новые проекты, инициализированные через `project-bootstrap`, автоматически включали handoff из коробки.
**Прецедент:** project-bootstrap v1.4.0+ уже добавляет строку `pull remote before work` в canonical CLAUDE.md template — для активации `pulling-before-work` скила. Новая строка — аналогично. **Прецедент:** project-bootstrap v1.4.0+ уже добавляет строку `pull remote before work` в canonical CLAUDE.md template — для активации `pulling-before-work` скила. Новая строка — аналогично.
**User'ское напоминание:** явно зафиксировано в финальной реплике перед промоушеном 2026-05-24, «не забудь, что нужно будет обновить project bootstrap». **User'ское напоминание:** явно зафиксировано в финальной реплике перед промоушеном 2026-05-24, «не забудь, что нужно будет обновить project bootstrap».
**Status:** ready **Status:** done
**Where I stopped:** (not started) **Where I stopped:** done
**Next action:** 1. Открыть ~/projects/claude-skills/skills/project-bootstrap/SKILL.md → найти секцию canonical CLAUDE.md template. **Closed by:** Trigger-строка `session handoff: read on start, write on end` добавлена в `assets/CLAUDE.md.template:10` между `pull remote before work` и `follow project discipline` (session-lifecycle clustering). Соответствующий row в Step 5.6 trigger→fulfiller table at `SKILL.md:492` (source-of-truth invariant template ↔ table сохранён). Bump `version: 1.11.0` → `1.12.0` MINOR (new capability for greenfield bootstrap'а, backward-compatible). Rebuilt `dist/project-bootstrap.skill` через `scripts/build.ps1 -Names project-bootstrap`. Reinstalled в `~/.claude/skills/project-bootstrap/` через `scripts/install.ps1 -Names project-bootstrap` — verified frontmatter v1.12.0 + template + table row on disk. Step 5 (no install/push в этой таске) переинтерпретирован: rebuild+install — это deploy локальной копии, не push в remote; push — отдельный gate.
2. Добавить строку `session handoff: read on start, write on end` рядом с `pull remote before work` и другими trigger-строками. **Branch:** master
3. Bump project-bootstrap MINOR (canonical template extended — новая функциональность для greenfield bootstrap'а, backward-compatible с существующими проектами).
4. Закоммитить с semver-bump в commit message (per project-discipline rule 3).
5. Не делать install / push в этой таске — это работа отдельная.
**Branch:** n/a
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: OpeItcLoc03/workshop / 2026-05-24T18:20:48.752Z --> <!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: OpeItcLoc03/workshop / 2026-05-24T18:20:48.752Z -->
<!-- closed-by: vitya@DESKTOP-NSEF0UK / 2026-05-24 / acceptance: template+table+bump ✓; rebuild ✓; install ✓; unblocks existing-projects-upgrade Path B -->
--- ---

View File

@@ -0,0 +1,34 @@
# session-handoff-bootstrap-template-extend
## Goal
Расширить canonical CLAUDE.md template в `project-bootstrap` новой trigger-строкой `session handoff: read on start, write on end` — чтобы greenfield-bootstrap'ed проекты получали handoff из коробки. Также добавить соответствующий row в Step 5.6 trigger→fulfiller table (source-of-truth invariant: template ↔ table в одном commit'е). Bump project-bootstrap MINOR (new template entry = new capability, backward-compatible).
## Key files
- `skills/project-bootstrap/assets/CLAUDE.md.template:10` — добавлен `session handoff: read on start, write on end` между `pull remote before work` и `follow project discipline` (session-lifecycle clustering)
- `skills/project-bootstrap/SKILL.md:3` — bump `version: 1.11.0``1.12.0`
- `skills/project-bootstrap/SKILL.md:492` — новый row в Step 5.6 trigger→fulfiller table
## Decisions log
- 2026-05-24: позиция trigger-строки — после `pull remote before work` (тоже session-start hook), перед `follow project discipline`. Session-lifecycle triggers группируются вместе.
- 2026-05-24: bump MINOR (1.11.0 → 1.12.0) — добавление trigger-строки в canonical template = новая capability для greenfield bootstrap'а, существующие проекты не ломаются (CLAUDE.md merge — idempotent + respects user removals per Step 5.6 Algorithm).
- 2026-05-24: rebuild `dist/project-bootstrap.skill` через `scripts/build.ps1 -Names project-bootstrap` — обязательно, иначе deploy на других машинах через `.skill` archive получит stale template.
- 2026-05-24: reinstall в `~/.claude/skills/project-bootstrap/` через `scripts/install.ps1 -Names project-bootstrap`.
## Open questions
- [ ] нет
## Completed steps
- [x] edit `assets/CLAUDE.md.template` — insert trigger line
- [x] edit `SKILL.md` frontmatter — bump 1.11.0 → 1.12.0
- [x] edit `SKILL.md` Step 5.6 — add row to trigger→fulfiller table
- [x] `scripts\build.ps1 -Names project-bootstrap``dist/project-bootstrap.skill` rebuilt
- [x] `scripts\install.ps1 -Names project-bootstrap`
- [x] verify `~/.claude/skills/project-bootstrap/SKILL.md` v1.12.0 on disk
- [x] verify template contains новой строки + table row at SKILL.md:492
- [x] STATUS.md → 🟢
- [ ] commit (next)
## Notes
Unblocks `[session-handoff-existing-projects-upgrade]` Path B (project-bootstrap в upgrade-режиме теперь видит handoff trigger как canonical).
Этот edit — следствие user'ского напоминания из брейнсторма 2026-05-24 «не забудь, что нужно будет обновить project bootstrap».

Binary file not shown.

View File

@@ -1,6 +1,6 @@
--- ---
name: project-bootstrap name: project-bootstrap
version: 1.11.0 version: 1.12.0
description: > description: >
Initializes or upgrades a project in the current folder: git, .gitignore, README.md, Initializes or upgrades a project in the current folder: git, .gitignore, README.md,
.wiki/ using Karpathy's method, .tasks/ for task tracking, CLAUDE.md with skill triggers. .wiki/ using Karpathy's method, .tasks/ for task tracking, CLAUDE.md with skill triggers.
@@ -489,6 +489,7 @@ Mismatch between template and map → silent gaps in the recommendation.
| `use task management system` | `using-tasks` | skill | `~/.claude/skills/using-tasks/SKILL.md` | `bash scripts/install.sh using-tasks` | | `use task management system` | `using-tasks` | skill | `~/.claude/skills/using-tasks/SKILL.md` | `bash scripts/install.sh using-tasks` |
| `check across all projects` | `using-projects-meta` | skill | `~/.claude/skills/using-projects-meta/SKILL.md` | `bash scripts/install.sh using-projects-meta` | | `check across all projects` | `using-projects-meta` | skill | `~/.claude/skills/using-projects-meta/SKILL.md` | `bash scripts/install.sh using-projects-meta` |
| `pull remote before work` | `pulling-before-work` | skill | `~/.claude/skills/pulling-before-work/SKILL.md` | `bash scripts/install.sh pulling-before-work` | | `pull remote before work` | `pulling-before-work` | skill | `~/.claude/skills/pulling-before-work/SKILL.md` | `bash scripts/install.sh pulling-before-work` |
| `session handoff: read on start, write on end` | `session-handoff` | skill | `~/.claude/skills/session-handoff/SKILL.md` | `bash scripts/install.sh session-handoff` |
| `follow project discipline` | `project-discipline` | skill | `~/.claude/skills/project-discipline/SKILL.md` | `bash scripts/install.sh project-discipline` | | `follow project discipline` | `project-discipline` | skill | `~/.claude/skills/project-discipline/SKILL.md` | `bash scripts/install.sh project-discipline` |
| `follow tdd-criteria` | `tdd-criteria` | skill | `~/.claude/skills/tdd-criteria/SKILL.md` | `bash scripts/install.sh tdd-criteria` | | `follow tdd-criteria` | `tdd-criteria` | skill | `~/.claude/skills/tdd-criteria/SKILL.md` | `bash scripts/install.sh tdd-criteria` |
| `delegate to interns when allowed` | `using-interns` | skill | `~/.claude/skills/using-interns/SKILL.md` | `bash scripts/install.sh using-interns` | | `delegate to interns when allowed` | `using-interns` | skill | `~/.claude/skills/using-interns/SKILL.md` | `bash scripts/install.sh using-interns` |

View File

@@ -7,6 +7,7 @@ use project wiki
use task management system use task management system
check across all projects check across all projects
pull remote before work pull remote before work
session handoff: read on start, write on end
follow project discipline follow project discipline
follow tdd-criteria follow tdd-criteria
delegate to interns when allowed delegate to interns when allowed