ci(docs[trigger]): publish from seo-packages branch#28
Closed
Conversation
why: gp-sphinx cut 0.0.1a10 covering the merged seo-packages PR (sphinx-gp-opengraph + sphinx-gp-sitemap, register-aware autodoc-docutils discovery, post-audit bug fixes). libtmux-mcp should track the latest workspace alpha so its docs build picks up the SEO emission and the corrected sitemap behaviour. what: - pyproject.toml: gp-sphinx, sphinx-autodoc-api-style, sphinx-autodoc-fastmcp pins move 0.0.1a9 → 0.0.1a10 in both the main and dev dependency groups. - uv.lock refresh is deferred until 0.0.1a10 publishes to PyPI. The lock currently resolves the 0.0.1a9 line, which is what ``uv sync --locked`` will install until the next ``uv lock`` follow-up.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #28 +/- ##
==========================================
+ Coverage 86.67% 86.91% +0.23%
==========================================
Files 38 38
Lines 1719 1719
Branches 204 204
==========================================
+ Hits 1490 1494 +4
+ Misses 169 166 -3
+ Partials 60 59 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Member
Author
|
Addressed via other commit |
tony
added a commit
that referenced
this pull request
May 3, 2026
why: Verifies the in-flight `sphinx-vite-builder` PEP 517 backend (git-pull/gp-sphinx#29) end-to-end as a real downstream consumer. libtmux-mcp consumes `gp-sphinx` (and transitively `gp-furo-theme`), so installing this branch's deps exercises the new backend's `build_editable` hook against the actual vite + pnpm toolchain in CI. what: - pyproject.toml: - Bump `gp-sphinx` (and matching helper packages) constraint from `==0.0.1a13` (the latest PyPI release) to `==0.0.1a15` (the workspace-internal version on the gp-sphinx PR branch). - Add `[tool.uv.sources]` entries pointing every gp-sphinx workspace package at the `sphinx-vite-builder` branch via git URL + subdirectory. uv resolves each package directly from the PR branch rather than from PyPI. - uv.lock: locked against commit 1ab7554a on git-pull/gp-sphinx (the latest sphinx-vite-builder branch tip at write time). - .github/workflows/docs.yml: - Trigger on push to `sphinx-vite-builder` so the deploy workflow runs on this branch (not just main). The S3/CloudFront publish steps still gate on the `LIBTMUX_MCP_DOCS_*` secrets being populated for the `docs` environment. - Add `pnpm/action-setup@v6` (pnpm 10) and `actions/setup-node@v6` (Node 22) before `uv sync`. Without pnpm on PATH, the new backend fast-fails with `PnpmMissingError` at editable-install time — these steps satisfy the toolchain requirement so the backend can run vite and populate the gitignored `static/` tree that gp-furo-theme advertises in `theme.conf`. Verified locally: - `uv lock` resolves the 11 gp-sphinx packages from the branch - `uv sync --all-extras --dev` succeeds (vite runs during the gp-furo-theme editable install via the new backend) - `just build-docs` produces a clean docs site Once gp-sphinx#29 merges and v0.0.1a16 (or v0.0.1a15 re-publish) ships to PyPI, this commit is reverted: the `[tool.uv.sources]` entries go away, the version pin returns to PyPI, and the docs.yml trigger drops the branch entry. Track via `git log --grep="DO NOT MERGE"`. References: - gp-sphinx PR #29: git-pull/gp-sphinx#29 - gp-sphinx issue #28 (architecture): git-pull/gp-sphinx#28
tony
added a commit
that referenced
this pull request
May 3, 2026
…nstall) why: Verifies the **wheel-install path** of the new sphinx-vite-builder backend (gp-sphinx PR #29, dev release tagged v0.0.1a16.dev0 and published to PyPI). End users `pip install` gp-furo-theme from PyPI; the wheel ships with vite-built `static/` already baked in by the backend at release time, so the install path never invokes the backend and never needs pnpm or Node. This commit is the canonical proof of that property, demonstrated end-to-end: - Drop every `[tool.uv.sources]` git URL added in commit 91ad21a; uv resolves every gp-sphinx package straight from PyPI now. - Bump version pins from `==0.0.1a15` to `==0.0.1a16.dev0` (matches the dev release). - Drop pnpm/Node setup steps from `docs.yml` and `tests.yml`. Toolchain not needed for wheel-install path; their presence here would obscure the proof. - Refresh `uv.lock` (`uv lock --refresh --prerelease=allow` since PEP 440 dev releases need explicit prerelease policy). Verified locally with `PATH` stripped of pnpm/node/corepack: $ PATH=$(echo "$PATH" | tr : '\n' | grep -v -E "(pnpm|node|corepack)" | paste -sd:) which pnpm pnpm not found $ PATH=... uv sync --all-extras --dev # succeeds $ PATH=... just build-docs # succeeds; 60K furo-tw.css + 8K furo.js render Once gp-sphinx v0.0.1a16 stable ships to PyPI (after dev releases are verified), this commit is replaced by a normal pin bump. References: - gp-sphinx PR #29: git-pull/gp-sphinx#29 - gp-sphinx issue #28 (architecture): git-pull/gp-sphinx#28 - v0.0.1a16.dev0 wheel: https://pypi.org/project/gp-furo-theme/0.0.1a16.dev0/
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.
Summary
seo-packagesto the docs workflow'son.push.brancheslist so the publish pipeline (uv sync → just html → S3 sync → CloudFront invalidate → Cloudflare purge) can be exercised end-to-end on this branch without merging to main first.uv.lock'sexclude-newertimestamp (artifact of adding then dropping a temporary[tool.uv.sources]local-path override for the in-progress gp-sphinx SEO migration; net pyproject change vs main is zero).Test plan
seo-packagestriggers.github/workflows/docs.ymldorny/paths-filtercorrectly gates publish to docs-relevant changesuv syncresolves cleanly from PyPI (no local-path leakage)just htmlbuilds without warnings