Commit 4bb4dca
feat: migrate knowledgebase nav to the docengine subsystem (#2795)
> **Draft — depends on coreweave/docengine#183.** Do not merge until
#183 is merged and this repo's `docengine` submodule is bumped to
include it (Dependabot bump). The workflow calls `docengine
knowledgebase apply`, which only exists once the pinned submodule
contains #183.
## Summary
Replaces the bundled `scripts/knowledgebase-nav/` toolchain with the
DocEngine `knowledgebase` subsystem. The Python that was byte-for-byte
duplicated with `coreweave/docs` now lives once in the engine and
reaches hosts via Dependabot.
## Changes
- **`docengine-site/knowledgebase.yaml`** — the old `config.yaml` minus
`mintlify_root` (the support root is resolved from `docengine.yaml`
`output_subpath` = `.`). Products and allowed keywords are unchanged.
- **`docengine-site/templates/`** — the two MDX templates moved here.
W&B keeps its own product-index template variant (`title: "Support: …"`,
no `sidebarTitle`); templates are per-host.
- **Removed `scripts/knowledgebase-nav/`** — script, report, tests,
README, `Architecture.md`, `requirements.txt`. The engine owns the logic
and tests now.
- **`.github/workflows/knowledgebase-nav.yml`** — slimmed to:
authenticate + init the `docengine` submodule (`DOCENGINE_TOKEN`), `pip
install -e ./docengine`, `docengine knowledgebase apply --report-file
…`, upsert the PR comment (same `<!-- knowledgebase-nav-report -->`
marker), and commit the support output back with the
`wandb-docs-pr-writer` App token. The engine reports its exact changed
files, so the old `git add --dry-run` candidate loop is gone.
## Behavior change (forks)
Generation now needs the **private** `coreweave/docengine` submodule,
which fork PRs cannot clone. The job runs for **same-repo PRs and manual
dispatch only**; fork PRs are regenerated by a maintainer after merge
(the former bundled script could generate but never push on forks).
Workflow/job names are unchanged so any required-check names still
match.
## Verification
The engine change (#183) was proven behavior-preserving by a
differential against this repo's real
`scripts/knowledgebase-nav/generate_tags.py` over the live `support/`
tree (this is the `output_subpath: "."` case): the generated trees are
byte-identical except the intended `template:` provenance line
(`scripts/knowledgebase-nav/templates/…` →
`docengine-site/templates/…`); `support.mdx` and all article footers are
byte-identical. Report markdown is byte-identical to the legacy
`pr_report.py`.
## Merge order
1. Merge coreweave/docengine#183.
2. Bump this repo's `docengine` submodule to include it (Dependabot).
3. Mark this PR ready and merge.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: wandb-docs-pr-writer[bot] <wandb-docs-pr-writer[bot]@users.noreply.github.com>1 parent 8b79de1 commit 4bb4dca
66 files changed
Lines changed: 168 additions & 6881 deletions
File tree
- .github/workflows
- docengine-site
- templates
- support
- inference/tags
- models/tags
- weave/tags
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Large diffs are not rendered by default.
Lines changed: 11 additions & 22 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | | - | |
5 | | - | |
6 | | - | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
7 | 10 | | |
8 | 11 | | |
9 | | - | |
10 | | - | |
11 | | - | |
| 12 | + | |
| 13 | + | |
12 | 14 | | |
13 | 15 | | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
| 16 | + | |
| 17 | + | |
22 | 18 | | |
23 | 19 | | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | 20 | | |
31 | | - | |
32 | 21 | | |
33 | 22 | | |
34 | 23 | | |
| |||
File renamed without changes.
This file was deleted.
0 commit comments