SIGN IN SIGN UP

ci: Extract docs versioning and release into reusable workflows (#728)

## Summary

**Docs versioning** (`manual_version_docs.yaml`):
- Extract the inline `version_docs` job from
`manual_release_stable.yaml` into a standalone reusable workflow
- Can be triggered manually from the GitHub UI (with an optional ref
input) or called from the release pipeline
- Fix `api:version` ENOENT bug by running docusaurus commands through
`uv run`
- Clean up all existing versions for the same major version, not just
exact major.minor match
- Remove non-docs artifacts (pyproject.toml, .gitignore, caches) from
versioned doc snapshots
- Align `doc_release` ref to use `version_docs_commitish` instead of
`default_branch`

**Docs release** (`manual_release_docs.yaml`):
- Rename `_release_docs.yaml` to `manual_release_docs.yaml` to match the
naming convention
- Add optional `ref` input to `workflow_dispatch` so it can be triggered
from the GitHub UI with a specific ref (falling back to the default
branch)
- Replace `CHECKOUT_REF` env var approach with a `Determine checkout
ref` step, consistent with `manual_version_docs.yaml`
- Update all references in `manual_release_stable.yaml` and
`on_master.yaml`

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
V
Vlada Dusek committed
6eb9aeee9ce82d0787237aed9810d07f7164bb58
Parent: 0a668f2
Committed by GitHub <noreply@github.com> on 4/16/2026, 8:06:01 AM