Repository navigation
docs(versioning): identify development docs and distinguish candidate, abandoned and published versions - #951
Merged
Merged
Conversation
…, abandoned and published versions The docs site is built from main, and main's __version__ can name a candidate or an abandoned version. The English and Korean home pages now say the site is development documentation, link the exact source commit (an MkDocs hook fills it in from GITHUB_SHA or git), and point to published releases and their docs at the tag; the Quick Start states the published releases it was run with. RELEASING.md gains a version-state table, corrects the bot-PR CI description from observed runs, lists what the release maintainer records before merging, and adds an after- publication step. Refs #946 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
There was a problem hiding this comment.
🟡 Changes recommended
Publication visibility is incorrectly presented as completed verification, and the new tests lack required repository-tooling lane registration.
2 open findings
What changed in this PR
Clarifies development documentation provenance and distinguishes candidate, abandoned, and verified published versions without changing dialect behavior.
Changes:
- Adds source-commit links through a tested MkDocs hook.
- Updates English and Korean entry points with development scope and dated example evidence.
- Expands release-state, CI, and post-publication guidance.
| File | Description |
|---|---|
test/test_docs_provenance_hook.py |
Tests revision lookup and rendering. |
scripts/docs_provenance_hook.py |
Adds build-time source provenance. |
RELEASING.md |
Clarifies release states and maintainer checks. |
mkdocs.yml |
Registers the provenance hook. |
docs/QUICKSTART.md |
Identifies dated published-package evidence. |
docs/llms-full.txt |
Refreshes generated documentation. |
docs/ko/QUICKSTART.md |
Mirrors Quick Start clarification. |
docs/ko/index.md |
Adds Korean development-documentation notice. |
docs/index.md |
Adds development scope and release-source links. |
CHANGELOG.md |
Records documentation and runbook changes. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
GitHub Releases and PyPI list a release as soon as it is uploaded, before the post-publication cookbook check; only the publisher's published and verified result shows that check passed. Register the provenance hook tests as repository tooling so make test-repo runs them. Refs #946 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
Author
|
Documentation and release maintainer review (delegated) of head f87b9cf.
Approved for merge. |
This was referenced Oct 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


What this PR does
Makes the documentation and the release runbook tell four things apart: development source, a proposed version, an abandoned version and a verified published release.
docs/index.mdanddocs/ko/index.mdgain an "About this documentation" section:mainindependently of releases.__version__is not a release: it can name a candidate, or an abandoned version such as 1.11.1.tree/<sha>. A small MkDocs hook,scripts/docs_provenance_hook.py, fills in an HTML-comment marker at build time fromGITHUB_SHA, or else fromgit rev-parse HEAD. If neither is available, the page says the commit was not recorded. The hook never contacts GitHub or PyPI.docs/folder at the release tag (example:v1.11.0).2.1.4 1.11.0 1.13.0output came from the published PyPI releases it was last run with, on 2026-10-15.RELEASING.md:mainread 1.11.1, and published 1.11.0. A failed PyPI or API read makes the state unknown, never "absent" or "newest".pull_requestruns, but they wait asaction_requiredor endfailure, both with zero jobs. The section now says so, adds approving the waiting runs as an option besides close/reopen or a push, and adds a table of CI states. The table separates missing, approval-required or not run, running, failed and passed, and says that a success on an older head is stale.CHANGELOG.md(not the bot body), the exact reviewed final head SHA with every required check passed on it, and the review of release-sensitive paths. It adds that a docs-only candidate may wait, that a justified docs-only release is fine, and that commits must never be relabelled to change the version.Why
#946. The site deploys from
mainon every push. At the time of filing,mainread 1.11.1, a version that was never published, while PyPI's newest release was 1.11.0. Nothing on the site said which revision a reader was looking at, or that it was not a release. The runbook's description of CI on bot-updated release PRs also did not match what GitHub actually does.Alternative not chosen
docs/is enough.Changes
scripts/docs_provenance_hook.py(new) andmkdocs.yml(hooks:).test/test_docs_provenance_hook.py(new, offline, 10 tests). They cover:GITHUB_SHAtaking precedence, with case normalized;gitas the fallback;git, or a failinggit) givingNone;mkdocs.ymlregistering the hook.docs/index.md,docs/ko/index.md,docs/QUICKSTART.md,docs/ko/QUICKSTART.md. Their heading, code-block and table structure still match between English and Korean.RELEASING.md,docs/llms-full.txt(regenerated) andCHANGELOG.md.Known differences / Not changed
RELEASING.mddivergence. The runbook is described as kept identical across the sibling repositories. These additions diverge until each sibling adopts them through its own issue; closure here is repository-local.scripts/docs_provenance_hook.py. A PR that changes only the hook is covered by the offline tests, but not by a strict site build. Changing the filter means editing.github/workflows/ci.yml, so it is left for a separate maintainer-reviewed change.Validation
Rendered output.
mkdocs build --strictexits 0. The built pages contain the provenance line:That was a local build on base
767a0bc, so thegitfallback was used.Run evidence behind the runbook correction. Read with
gh api .../actions/runs?branch=release-please--branches--main--components--sqlalchemy-cubrid: run 38573152583 isaction_requiredwith 0 jobs, and run 38573281349 isfailurewith 0 jobs. Both arepull_requestruns bygithub-actions[bot]on #910's heads. The runs that actually tested #910's final head 2bb1fc7 were started by a maintainer.Checks:
pytest -m "not integration" test: 3296 passed, 92 skipped.check_docs_translation,check_docs_links,check_agents_docs,lint_changelogandcheck_support_claims: OK.generate_llms_full.py: regenerated.ruff checkandruff format --check: clean.Development route: standalone agent (Claude Code); review route: a submitted GitHub Copilot review, or a maintainer review.
Refs #946
🤖 Generated with Claude Code