Summary
The docs-* Makefile targets (thirteen, all advertised in make help) cannot run on a checkout of this repository: every input they need (docs/requirements.txt, docs/en/, docs/ko/, docs/shared/, docs/overrides/) is absent, and the two mkdocs configs' nav: blocks list 33 pages each, none of which exist. git log --all -- docs/en is empty, so this is not a deletion regression. A maintainer needs to say whether the manual sources belong in this repo (not landed yet) or are built from a different tree; the fix differs.
Background
Makefile:825-908 defines: docs-install, docs-serve, docs-serve-en, docs-serve-ko, docs-build, docs-build-ko, docs-build-all, docs-build-strict, docs-pdf-setup, docs-pdf-en, docs-pdf-ko, docs-pdf, docs-clean, each with a ## help string.
| Required |
Referenced from |
Present |
docs/requirements.txt |
Makefile:834 (uv pip install -r docs/requirements.txt) |
no |
docs/en/ |
mkdocs.yml:8 (docs_dir: docs/en) |
no |
docs/ko/ |
mkdocs.ko.yml:8 |
no |
docs/shared/ |
mkdocs.yml:75 (snippets include_dir) |
no |
docs/overrides/ |
mkdocs.yml:14 (custom_dir) |
no |
The nav: blocks at mkdocs.yml:128 and mkdocs.ko.yml:131 list 33 page paths each (getting-started/, user-guide/, concepts/, api-reference/, development/, distributed/, index.md, prompt_cache.md); none exist under any docs root. Meanwhile the fifteen real documents in docs/*.md appear in neither nav. docs/README.md:39-41 lists docs/en/... and docs/ko/... under "Expected future layout examples," and mkdocs.yml:3 has site_url: https://mlxcel.lablup.ai/en/manual/, so the configs were written ahead of the content or the manual lives in a tree that is not part of this repo. mkdocs.pdf.yml and mkdocs.ko.pdf.yml inherit the same problem (plus more missing inputs under docs/resources/).
Impact
make help is the discovery surface for the build system and it advertises thirteen targets that fail. make docs-install fails on its first real command with a missing-file error; working around that hits a broken symlink, then an mkdocs run against a nonexistent docs_dir. Nothing says the manual is built elsewhere, so the only way to find out is to run one and read the failure.
Proposed Solution
A maintainer needs to say which situation applies:
(a) The manual sources belong in this repo and have not landed yet. The targets and configs are scaffolding for unwritten content. Add a note to docs/README.md and a guard in docs-install that fails with a clear message ("the manual sources under docs/en are not present in this checkout; see …") instead of an opaque uv pip error.
(b) The manual is built from a different tree (e.g. the private mirror, matching the site_url). The thirteen targets and both mkdocs configs do not belong in the public repository, or must be documented as no-ops here.
Either way, reconcile the 33 dangling nav entries with whatever tree holds the pages, and make the fifteen real docs/*.md files either appear in a nav or be explicitly out of scope.
Implementation Notes
mkdocs.pdf.yml and mkdocs.ko.pdf.yml have the same problem and should be handled in the same pass.
- The diff is small either way, but it is the wrong change if the (a)/(b) direction is guessed; confirm on the issue first.
Acceptance Criteria
Original Suggestion
Title: chore(docs): the twelve docs-* Makefile targets cannot run in this repository
Problem / Background
Makefile:829-906 defines twelve documentation targets, each with a ## help string, so
all twelve appear in make help:
docs-install docs-serve docs-serve-en docs-serve-ko docs-build docs-build-ko
docs-build-all docs-build-strict docs-pdf-setup docs-pdf-en docs-pdf-ko docs-pdf
docs-clean
None of them can run on a checkout of this repository. Every input they need is absent:
| Required |
Referenced from |
Present |
docs/requirements.txt |
Makefile:834 (uv pip install -r docs/requirements.txt) |
no |
docs/en/ |
mkdocs.yml:8 (docs_dir: docs/en), Makefile:836 |
no |
docs/ko/ |
mkdocs.ko.yml:8 (docs_dir: docs/ko), Makefile:837 |
no |
docs/shared/ |
Makefile:836-837 (ln -s ../shared docs/en/shared) |
no |
docs/overrides/ |
mkdocs.yml:14, mkdocs.ko.yml:14 (custom_dir) |
no |
git log --all -- docs/en is empty: this tree has never existed in the repository's
history, so this is not a deletion regression.
On top of that, the nav: blocks in mkdocs.yml:128 and mkdocs.ko.yml:131 list 33
page paths each — getting-started/, user-guide/, concepts/, api-reference/,
development/, distributed/, index.md, prompt_cache.md — and none of the 33 exist
under any docs root in the repo. Meanwhile the fifteen real documents in docs/*.md
(environment-variables.md, CONTINUOUS_BATCHING.md, turbo-kv-cache.md,
responses-api.md, and so on) appear in neither nav.
docs/README.md:41 suggests the intent — it lists docs/en/... and docs/ko/... under
"Expected future layout examples" — so the configs were written ahead of the content, or
the manual sources live in a tree that is not part of this repository.
Impact
make help is the discovery surface for the build system, and it advertises twelve targets
that fail. make docs-install fails on its first real command with a missing-file error
from uv pip; anyone who works around that hits a broken symlink, then an mkdocs run
against a nonexistent docs_dir. There is no note anywhere saying the manual is built
elsewhere, so the only way to find out is to run one and read the failure.
Proposed solution
This needs a maintainer to say which of two situations applies, and the fix differs:
(a) The manual sources belong in this repo and have not landed yet. Then the targets and
the two mkdocs configs are scaffolding for unwritten content. Add a note to docs/README.md
and a guard in docs-install that fails with a clear message ("the manual sources under
docs/en are not present in this checkout; see …") instead of an opaque uv pip error.
(b) The manual is built from a different tree (for example the private mirror, matching
the site_url: https://mlxcel.lablup.ai/en/manual/ in mkdocs.yml:3). Then the twelve
targets and both mkdocs configs do not belong in the public repository at all, or must be
documented as no-ops here.
Either way the 33 dangling nav entries should be reconciled with whatever tree actually
holds the pages, and the fifteen real docs/*.md files should either appear in a nav or be
explicitly out of scope for the site.
Acceptance criteria
Technical considerations
mkdocs.pdf.yml and mkdocs.ko.pdf.yml have the same problem and should be handled in the
same pass.
Start by asking on the issue which of (a) or (b) is intended — the diff is small either way,
but it is the wrong change if guessed.
Summary
The
docs-*Makefile targets (thirteen, all advertised inmake help) cannot run on a checkout of this repository: every input they need (docs/requirements.txt,docs/en/,docs/ko/,docs/shared/,docs/overrides/) is absent, and the two mkdocs configs'nav:blocks list 33 pages each, none of which exist.git log --all -- docs/enis empty, so this is not a deletion regression. A maintainer needs to say whether the manual sources belong in this repo (not landed yet) or are built from a different tree; the fix differs.Background
Makefile:825-908defines:docs-install,docs-serve,docs-serve-en,docs-serve-ko,docs-build,docs-build-ko,docs-build-all,docs-build-strict,docs-pdf-setup,docs-pdf-en,docs-pdf-ko,docs-pdf,docs-clean, each with a##help string.docs/requirements.txtMakefile:834(uv pip install -r docs/requirements.txt)docs/en/mkdocs.yml:8(docs_dir: docs/en)docs/ko/mkdocs.ko.yml:8docs/shared/mkdocs.yml:75(snippets include_dir)docs/overrides/mkdocs.yml:14(custom_dir)The
nav:blocks atmkdocs.yml:128andmkdocs.ko.yml:131list 33 page paths each (getting-started/,user-guide/,concepts/,api-reference/,development/,distributed/,index.md,prompt_cache.md); none exist under any docs root. Meanwhile the fifteen real documents indocs/*.mdappear in neither nav.docs/README.md:39-41listsdocs/en/...anddocs/ko/...under "Expected future layout examples," andmkdocs.yml:3hassite_url: https://mlxcel.lablup.ai/en/manual/, so the configs were written ahead of the content or the manual lives in a tree that is not part of this repo.mkdocs.pdf.ymlandmkdocs.ko.pdf.ymlinherit the same problem (plus more missing inputs underdocs/resources/).Impact
make helpis the discovery surface for the build system and it advertises thirteen targets that fail.make docs-installfails on its first real command with a missing-file error; working around that hits a broken symlink, then an mkdocs run against a nonexistentdocs_dir. Nothing says the manual is built elsewhere, so the only way to find out is to run one and read the failure.Proposed Solution
A maintainer needs to say which situation applies:
(a) The manual sources belong in this repo and have not landed yet. The targets and configs are scaffolding for unwritten content. Add a note to
docs/README.mdand a guard indocs-installthat fails with a clear message ("the manual sources underdocs/enare not present in this checkout; see …") instead of an opaqueuv piperror.(b) The manual is built from a different tree (e.g. the private mirror, matching the
site_url). The thirteen targets and both mkdocs configs do not belong in the public repository, or must be documented as no-ops here.Either way, reconcile the 33 dangling nav entries with whatever tree holds the pages, and make the fifteen real
docs/*.mdfiles either appear in a nav or be explicitly out of scope.Implementation Notes
mkdocs.pdf.ymlandmkdocs.ko.pdf.ymlhave the same problem and should be handled in the same pass.Acceptance Criteria
docs-*target either works, or fails immediately with a message explaining why it cannot work here and where the manual lives.make helpdoes not advertise targets that cannot run without saying so.Original Suggestion
Title: chore(docs): the twelve
docs-*Makefile targets cannot run in this repositoryProblem / Background
Makefile:829-906defines twelve documentation targets, each with a##help string, soall twelve appear in
make help:None of them can run on a checkout of this repository. Every input they need is absent:
docs/requirements.txtMakefile:834(uv pip install -r docs/requirements.txt)docs/en/mkdocs.yml:8(docs_dir: docs/en),Makefile:836docs/ko/mkdocs.ko.yml:8(docs_dir: docs/ko),Makefile:837docs/shared/Makefile:836-837(ln -s ../shared docs/en/shared)docs/overrides/mkdocs.yml:14,mkdocs.ko.yml:14(custom_dir)git log --all -- docs/enis empty: this tree has never existed in the repository'shistory, so this is not a deletion regression.
On top of that, the
nav:blocks inmkdocs.yml:128andmkdocs.ko.yml:131list 33page paths each —
getting-started/,user-guide/,concepts/,api-reference/,development/,distributed/,index.md,prompt_cache.md— and none of the 33 existunder any docs root in the repo. Meanwhile the fifteen real documents in
docs/*.md(
environment-variables.md,CONTINUOUS_BATCHING.md,turbo-kv-cache.md,responses-api.md, and so on) appear in neither nav.docs/README.md:41suggests the intent — it listsdocs/en/...anddocs/ko/...under"Expected future layout examples" — so the configs were written ahead of the content, or
the manual sources live in a tree that is not part of this repository.
Impact
make helpis the discovery surface for the build system, and it advertises twelve targetsthat fail.
make docs-installfails on its first real command with a missing-file errorfrom
uv pip; anyone who works around that hits a broken symlink, then an mkdocs runagainst a nonexistent
docs_dir. There is no note anywhere saying the manual is builtelsewhere, so the only way to find out is to run one and read the failure.
Proposed solution
This needs a maintainer to say which of two situations applies, and the fix differs:
(a) The manual sources belong in this repo and have not landed yet. Then the targets and
the two mkdocs configs are scaffolding for unwritten content. Add a note to
docs/README.mdand a guard in
docs-installthat fails with a clear message ("the manual sources underdocs/enare not present in this checkout; see …") instead of an opaqueuv piperror.(b) The manual is built from a different tree (for example the private mirror, matching
the
site_url: https://mlxcel.lablup.ai/en/manual/inmkdocs.yml:3). Then the twelvetargets and both mkdocs configs do not belong in the public repository at all, or must be
documented as no-ops here.
Either way the 33 dangling nav entries should be reconciled with whatever tree actually
holds the pages, and the fifteen real
docs/*.mdfiles should either appear in a nav or beexplicitly out of scope for the site.
Acceptance criteria
docs-*target either works, or fails immediately with a messageexplaining why it cannot work here and where the manual lives.
make helpdoes not advertise targets that cannot run without saying so.Technical considerations
mkdocs.pdf.ymlandmkdocs.ko.pdf.ymlhave the same problem and should be handled in thesame pass.
Start by asking on the issue which of (a) or (b) is intended — the diff is small either way,
but it is the wrong change if guessed.