Skip to content

feat(dashboard): decouple Pages sections + single deployer, add pip nav link#888

Open
WangLingxun wants to merge 3 commits into
mainfrom
feat/dashboard-decoupled-sections
Open

feat(dashboard): decouple Pages sections + single deployer, add pip nav link#888
WangLingxun wants to merge 3 commits into
mainfrom
feat/dashboard-decoupled-sections

Conversation

@WangLingxun

@WangLingxun WangLingxun commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

Summary

Make the Primus engineering dashboard's Pages publishing decoupled and single-deployer.

Report content now lives on a dedicated orphan dashboard-data branch (weekly/monthly/backend-gap), pushed separately; tooling + site shell stay on main. The deploy workflow overlays the data branch's docs/ before building, so routine report runs never touch main. Sibling static sites (e.g. the DeepSeek-V4 projection) are aggregated as subpaths via a declarative manifest instead of a second, clobbering Pages deployer.

Commits

  • feat(dashboard): decouple Pages sections + single deployer, add pip nav link — add tools/backend_gap_report/pages-sections.json (sections = static dirs mounted at /<name>/; links = nav-only links such as the pip index); build_site_bundle.py aggregates them and emits sections.json; the homepage nav is data-driven (probes ./simple/ so the pip link shows only when present). Removes the hardcoded (mis-pathed, silently-skipped) projection copy. Deletes deploy-projection.yml (it competed for the single Pages site) — projection now publishes via the aggregator, and pre-merge preview is done by running the deploy workflow manually on a dev branch. Deploy workflow overlays the dashboard-data branch and drops the daily schedule (a companion workflow on the data branch auto-dispatches on push). Deletes the migrated dashboard data under docs_deprecated/.
  • docs(skill): note backend-gap data lives on the dashboard-data plane — trim the backend-gap skill to a one-line data-location note (branch/commit/deploy orchestration is owned by the caller, not the skill).

Notes

  • Companion piece (separate branch): the dashboard-data branch is already pushed with the migrated reports; it also carries notify-dashboard-deploy.yml (auto-dispatch on data push). Merge order: merge this PR to main first, so a data-branch push dispatches the new overlay-based deploy.
  • Single Pages site tradeoff: a repo has one Pages site, so a dev-branch preview (manual workflow_dispatch) temporarily replaces production until the next normal deploy.
  • Wheel publishing unaffected: release-build-wheel.yml is independent; the /simple/ pip index step is preserved.

…av link

- Aggregate independent static sections via a declarative manifest
  (tools/backend_gap_report/pages-sections.json): 'sections' are mounted as
  subpaths, 'links' are nav-only entries (e.g. the pip index). The builder
  emits sections.json; the shell renders nav generically with no hardcoded
  section/link. Replaces the hardcoded (and mis-pathed, silently-skipped)
  projection copy.
- Homepage 'Explore' nav is data-driven; the pip index link is probed and
  shown only when ./simple/ is present.
- Single Pages deployer: remove deploy-projection.yml (it competed for the one
  Pages site); projection now publishes via the aggregator, and pre-merge
  preview is done by running the deploy workflow manually on a dev branch.
- Delete migrated dashboard data under docs_deprecated/ (now on the
  dashboard-data branch).
@WangLingxun
WangLingxun marked this pull request as ready for review July 20, 2026 10:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant