docs: Nextra docs site under docs/ + GitHub Pages deploy - #150
Merged
Conversation
Swap the in-repo mkdocs documentation for the Nextra (Next.js) site built to replace it: - remove docs/*.md and mkdocs.yml - add the Nextra app at docs/ (pages/*.mdx, components/, public/, styles/, package.json, next.config.mjs, theme.config.tsx) Follow-up (not done here): drop mkdocs deps from pyproject and any mkdocs build/CI workflow. The Nextra app builds from docs/ (cd docs && npm install).
… clutter - remove the mkdocs docs dependency group from pyproject.toml and relock (uv.lock: mkdocs / mkdocs-material / pymdown-extensions + transitives, -228) - delete .github/workflows/deploy-docs.yml (the old mkdocs -> Pages deploy) - delete template artifacts copied into docs/ (docs/.github, docs/LICENSE)
…g-link fixes - telemetry: rewrite around emitted metrics + access via MCP / bubo report / ui-export; add a recipe to reproduce the overview metrics - troubleshooting: restructure as a runbook (read-only triage, failure signatures, symptom sections incl. LLM out-of-funds / revoked key) - code blocks: theme-based (light/dark) with copy on every fenced block (defaultShowCopyCode); custom CodeBlock matched to Nextra - mcp: SSH tab prerequisite-first; agent-general wording (not Codex-specific) - nav: move Configuration reference above References - configuration: condense the reference page; repoint features links to its section anchors
- next.config: output export, unoptimized images, trailingSlash, and
basePath from NEXT_PUBLIC_BASE_PATH ('/bubo' in CI, empty in dev)
- add asset() helper and wrap raw asset paths (navbar icons, footer logo,
tab-icon masks, recipe/overview icons, architecture image) so they resolve
under the Pages project-site subpath
- add .github/workflows/deploy-docs.yml: build docs/ -> upload-pages-artifact
-> deploy-pages (replaces the removed mkdocs deploy)
- gitignore docs/out
The mkdocs split docs are replaced by the Nextra site under docs/, and the README no longer carries the old split-doc links / avatar ref / poller phrase. Update the layout tests to match (they were already failing on main): - drop stale asset-guard and split-docs assertions (docs/*.md, docs/images/ bubo-avatar-preview.png, docs/examples/README.md, "Run it as a poller ...") - replace the mkdocs config-table + split-docs tests with test_docs_site_present, which asserts the Nextra docs tree exists and the mkdocs layout is gone
Emit `llm_review.lines_reviewed` (added lines per review) alongside the existing run-scoped instruments, persist the count on the review_runs row, and thread it through the poller and findings paths. Covered by test_inline_review and test_poller_telemetry_state.
mountainowl
added a commit
that referenced
this pull request
Jul 7, 2026
- REST-only SCM: drop the MCP posting path + upstream SCM MCP servers; post via REST for both GitLab and GitHub (src/bubo/mcp.py removed). - Standardized LLM_* config surface (env_config / review_config). - Anonymous opt-out analytics: per-review/outcome events over OTLP, numbers-only. - Merged onto main: kept the lines_reviewed telemetry (#150) in the poller; the mkdocs docs #134 edited are gone (Nextra migration) — LLM_* config docs to be ported into docs/pages/ as a follow-up.
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.
Replaces the in-repo mkdocs documentation with the Nextra (Next.js) site and wires up its GitHub Pages deploy. Rebased onto current
main; fast-forward.What changes
pages/*.mdx,components/,public/), replacing mkdocsdocs/*.md+mkdocs.yml.uv), MCP server (Local/SSH/HTTP), operate runbook, telemetry (metrics + MCP/bubo report/ui-exportaccess), troubleshooting runbook (read-only triage → failure signatures → symptom sections incl. LLM out-of-funds/revoked-key).Badge/Footnote/Eyebrowcomponents..github/workflows/deploy-docs.ymlbuilds the static export (basePath=/bubo) and publishes to Pages viadeploy-pages, replacing the removed mkdocs deploy. Anasset()helper prefixes raw asset paths so logos/icons resolve on the/bubo/project-site subpath.Verification
next build(static export) is clean — 14 pages, 0 unprefixed asset refs, all internal links/bubo/-prefixed.pyproject.toml/uv.lockare unchanged frommain(the now-unused mkdocs dep group can be pruned in a follow-up), souv sync --lockedstays consistent.Note
Pages is already configured (
build_type: workflow, https://mountainowl.github.io/bubo/). Merging tomaintriggers CI + the Pages deploy.