Skip to content

Commit a889b45

Browse files
committed
feat(release): integrate living-docs into git-release process
1 parent 3d96aa8 commit a889b45

File tree

2 files changed

+25
-9
lines changed

2 files changed

+25
-9
lines changed

.opencode/skills/git-release/SKILL.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,17 +82,29 @@ Add at the top:
8282
- description (#PR-number)
8383
```
8484

85-
### 5. Regenerate lockfile and commit version bump
85+
### 5. Update living docs
86+
87+
Run the `living-docs` skill to reflect the newly accepted feature in C4 diagrams and the glossary. This step runs inline — do not commit separately.
88+
89+
Load and execute the full `living-docs` skill now:
90+
- Update `docs/c4/context.md` (C4 Level 1)
91+
- Update `docs/c4/container.md` (C4 Level 2, if multi-container)
92+
- Update `docs/glossary.md` (living glossary)
93+
94+
The `living-docs` commit step is **skipped** here — all changed files are staged together with the version bump in step 6.
95+
96+
### 6. Regenerate lockfile and commit version bump
8697

8798
After updating `pyproject.toml`, regenerate the lockfile — CI runs `uv sync --locked` and will fail if it is stale:
8899

89100
```bash
90101
uv lock
91-
git add pyproject.toml <package>/__init__.py CHANGELOG.md uv.lock
102+
git add pyproject.toml <package>/__init__.py CHANGELOG.md uv.lock \
103+
docs/c4/context.md docs/c4/container.md docs/glossary.md
92104
git commit -m "chore(release): bump version to v{version} - {Adjective Animal}"
93105
```
94106

95-
### 6. Create GitHub release
107+
### 7. Create GitHub release
96108

97109
Assign the SHA first so it expands correctly inside the notes string:
98110

@@ -123,7 +135,7 @@ gh release create "v{version}" \
123135
**SHA**: \`${SHA}\`"
124136
```
125137

126-
### 7. If a hotfix commit follows the release tag
138+
### 8. If a hotfix commit follows the release tag
127139

128140
If CI fails after the release (e.g. a stale lockfile) and a hotfix commit is pushed, reassign the tag and GitHub release to that commit:
129141

@@ -151,6 +163,7 @@ The release notes and title do not need to change — only the target commit mov
151163
- [ ] `uv lock` run after version bump — lockfile must be up to date
152164
- [ ] `<package>/__version__` matches `pyproject.toml` version
153165
- [ ] CHANGELOG.md updated
166+
- [ ] `living-docs` skill run — C4 diagrams and glossary reflect the new feature
154167
- [ ] Release name not used before
155168
- [ ] Release notes follow the template format
156169
- [ ] If a hotfix was pushed after the tag: tag reassigned to hotfix commit

.opencode/skills/living-docs/SKILL.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ The glossary is a secondary artifact derived from the code, the domain model, an
1515

1616
## When to Use
1717

18-
- **PO at Step 5**after the feature is accepted and moved to `completed/`, run this skill to reflect the new feature in C4 diagrams and glossary.
19-
- **Stakeholder on demand** — when the stakeholder asks "what does the system look like?" or "what does term X mean in this context?".
18+
- **As part of the release process (Step 5)** — the `git-release` skill calls this skill inline at step 5, before the version-bump commit. Do not commit separately; the release process stages all files together.
19+
- **Stakeholder on demand** — when the stakeholder asks "what does the system look like?" or "what does term X mean in this context?". In this case, commit with the standalone message in Step 5 below.
2020

2121
## Ownership Rules
2222

@@ -183,13 +183,15 @@ If `docs/glossary.md` already exists:
183183

184184
## Step 5 — Commit
185185

186-
After both C4 diagrams and glossary are updated:
186+
**When called from the release process**: skip this step — the `git-release` skill stages and commits all files together.
187+
188+
**When run standalone** (stakeholder on demand): commit after all diagrams and glossary are updated:
187189

188190
```
189191
docs(living-docs): update C4 and glossary after <feature-name>
190192
```
191193

192-
If this is a stakeholder-requested update without a specific feature trigger:
194+
If triggered without a specific feature (general refresh):
193195

194196
```
195197
docs(living-docs): refresh C4 diagrams and glossary
@@ -207,4 +209,5 @@ docs(living-docs): refresh C4 diagrams and glossary
207209
- [ ] No existing glossary entry removed
208210
- [ ] Every new term has a traceable source in completed feature files or `docs/architecture.md`; no term is invented
209211
- [ ] No edits made to `docs/architecture.md` or `docs/discovery.md`
210-
- [ ] Committed with `docs(living-docs): ...` message
212+
- [ ] If standalone: committed with `docs(living-docs): ...` message
213+
- [ ] If called from release: files staged but not committed (release process commits)

0 commit comments

Comments
 (0)