massgen-release-documenter
Guide for following MassGen's release documentation workflow. This skill should be used when preparing release documentation, updating changelogs, writing case studies, or maintaining project documentation across releases.
What this skill does
# Release Documenter This skill provides guidance for documenting MassGen releases following the established workflow and conventions. ## Purpose The release-documenter skill ensures consistent, complete release documentation by guiding you through the full release documentation workflow: CHANGELOG → Sphinx Documentation → README → Roadmap updates. ## When to Use This Skill Use the release-documenter skill when you need to: - Prepare documentation for a new release - Update CHANGELOG.md with new features and fixes - Write or update Sphinx documentation - Create case studies for major features - Update README.md and roadmap documents - Follow the release checklist process ## Authoritative Documentation **IMPORTANT:** The primary source of truth for release documentation is: **📋 `docs/dev_notes/release_checklist.md`** This file contains: - Complete phase-by-phase release workflow - Detailed documentation update requirements - Validation checklists - Commit and tag workflow - Automation tool information - All current conventions and rules **Always consult this document** for the complete release process. ## Critical Documentation Order **Always follow this order:** 0. **Fresh-branch bootstrap** (once, at branch creation) — version bump + rename `ROADMAP_v0.1.X.md` → `ROADMAP_v0.1.X+1.md` (see Phase 0) 1. **CHANGELOG.md** ⭐ START HERE 2. **Version bump** (`massgen/__init__.py` `__version__`) 3. **Sphinx Documentation** (docs/source/) 4. **Config Documentation** (massgen/configs/README.md) 5. **Case Studies** (docs/source/examples/case_studies/) 6. **README.md** 7. **README_PYPI.md** (auto-synced via pre-commit) 8. **Roadmap** (ROADMAP.md) 9. **Announcements** (docs/announcements/) — current-release.md, github-release-vX.md, archive This order is critical - never skip ahead! ## Quick Reference Workflow ### Phase 0: Fresh Release Branch Bootstrap (do this when the branch is created) **⚠️ Easy to miss — this happens once, at the *start* of a new `dev/v0.1.X` branch, not at doc-writing time.** When `dev/v0.1.X` is branched (right after the previous release merges in), a small bootstrap commit (`feat: v0.1.X`) sets the branch up: 1. **Bump the version**: `massgen/__init__.py` `__version__ = "0.1.X"` (`pyproject.toml` reads it dynamically). 2. **Roll the forward-looking roadmap file**: rename `ROADMAP_v0.1.X.md` → `ROADMAP_v0.1.X+1.md` and rewrite its content to plan the *next* release. This file always names the version *after* the one currently in development (the in-development version is tracked in the main `ROADMAP.md` sections). Update its title, "Overview", the deferred-feature "Deferred from …" range, and add the just-shipped version(s) to its "Related Tracks" list. ```bash git mv ROADMAP_v0.1.X.md ROADMAP_v0.1.X+1.md # then edit __version__ and the renamed roadmap file ``` > If you arrive mid-branch and find `ROADMAP_v0.1.X.md` (matching the in-dev version) still present, or `__version__` still on the previous release, the bootstrap was skipped — do it now before the release docs. ### Phase 1: CHANGELOG.md (Required First Step) Document all changes under these categories: - **Added** - New features - **Changed** - Modified behavior - **Fixed** - Bug fixes - **Documentations, Configurations and Resources** - New docs/configs - **Technical Details** - Contributors, focus areas ```bash # Get changes since last release git log v0.1.X-1..HEAD --oneline gh pr list --base dev/v0.1.X --state merged ``` See `docs/dev_notes/release_checklist.md` sections 3.1 for detailed format. ### Phase 2: Sphinx Documentation Update as needed: - `docs/source/index.rst` - Recent Releases section (keep latest 3) - `docs/source/user_guide/` - New feature guides - `docs/source/reference/yaml_schema.rst` - New YAML parameters - `docs/source/reference/supported_models.rst` - New models **Build and verify:** ```bash cd docs && make html make linkcheck # Verify no broken links ``` See `docs/dev_notes/release_checklist.md` section 3.2 for complete requirements. ### Phase 3: Config Documentation - Update `massgen/configs/README.md` - Create example configs in appropriate category - Test all new configs ### Phase 4: Case Studies ```bash # Use template cp docs/source/examples/case_studies/case-study-template.md \ docs/source/examples/case_studies/v0.1.X-feature-name.md # Update index vim docs/source/examples/case_studies.rst ``` See `docs/dev_notes/release_checklist.md` section 3.4. ### Phase 5: README.md Update these sections: 1. **Recent Achievements** (move old to Previous Achievements) 2. **Case Studies** section 3. **Configuration Files** (if structure changed) Copy format from CHANGELOG.md and expand. ### Phase 6: README_PYPI.md (Automated) **✅ Auto-synced via pre-commit hook!** When you commit README.md changes: 1. Pre-commit hook runs automatically 2. README_PYPI.md gets synced 3. If hook shows "Failed - files were modified", run `git commit` again Manual sync if needed: ```bash uv run python scripts/sync_readme_pypi.py ``` ### Phase 7: Roadmap - Mark completed features as ✅ in `ROADMAP.md` - Update `ROADMAP_v0.1.X+1.md` for next release - Do NOT edit `docs/source/development/roadmap.rst` (auto-generated) ### Phase 8: Announcements (`docs/announcements/`) **⚠️ Easy to miss — not auto-generated.** Each release rotates three things in `docs/announcements/`: 1. **Archive the outgoing announcement**: copy the current `current-release.md` to `archive/v0.1.X-1.md` (the version it currently describes). ```bash cp docs/announcements/current-release.md docs/announcements/archive/v0.1.X-1.md ``` 2. **Rewrite `current-release.md`** for the new version: update the title, Release Summary, Install version, release-notes link, "Suggested image" version, and the full LinkedIn announcement body (Key Improvements bullets). This is the long-form social/LinkedIn copy. 3. **Replace the GitHub-release highlights file**: delete `github-release-v0.1.X-1.md` and create `github-release-v0.1.X.md` (the short, emoji-sectioned GitHub Releases body dated `(YYYY-MM-DD)`). ```bash git rm docs/announcements/github-release-v0.1.X-1.md # then write docs/announcements/github-release-v0.1.X.md ``` `feature-highlights.md` and `README.md` in that directory are general (not per-version) — leave them unless the highlights changed. Use the just-archived previous version's files as templates so the structure/sections stay consistent. Keep `[TO BE ADDED AFTER POSTING]` placeholders for the X/LinkedIn links. > **Don't forget the version bump** (`massgen/__init__.py` `__version__ = "0.1.X"`) — `pyproject.toml` reads the version dynamically from there. ## Quick Validation Checklist **Must Update (every release):** 0. ✅ Fresh-branch bootstrap done? (`__version__` bumped + `ROADMAP_v0.1.X.md` → `ROADMAP_v0.1.X+1.md` renamed — see Phase 0) 1. ✅ CHANGELOG.md 2. ✅ `massgen/__init__.py` (`__version__` bump) 3. ✅ docs/source/index.rst (Recent Releases) 4. ✅ README.md (Recent Achievements + Latest Features + TOC anchors) 5. ✅ ROADMAP.md (Current Version, completed section, table) 6. ✅ docs/announcements/ (archive old, rewrite current-release.md, swap github-release-vX.md) 7. ⚠️ docs/source/user_guide/ (if user-facing feature) 8. ⚠️ massgen/configs/ (example configs, if any) 9. ⚠️ Case study (skip for internal-quality/no-user-facing-feature releases) **Should Update (if applicable):** 10. ⚠️ massgen/config_builder.py (if config params added) 11. ⚠️ massgen/backend/capabilities.py (if backend changes) 12. ✅ README_PYPI.md (auto-synced from README.md via pre-commit) **Build & Verify:** 13. 🔨 `cd docs && make html && make linkcheck` 14. 🔨 Test new config files 15. 🔨 Verify all links work See `docs/dev_notes/release_checklist.md` section "Quick Reference Checklist" for complete list. ## Backend Updates (When Needed) ### Config Builder If new YAML parameters were added, update `massgen/config_builder.py`: - Add parameters to interactive wizard - Upda
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.