Summary
The Astro site emits a site-wide /learn/ navigation link from both Header.astro and Footer.astro, but this checkout does not build a matching local route. The internal link checker therefore fails on every generated page.
Current behavior
uv run --frozen org site link-check --json exits with code 1 and reports 16 broken links:
agents/colleague/index.html ×2
agents/devague/index.html ×2
agents/index.html ×2
agents/lobes/index.html ×2
agents/reachy-mini-cli/index.html ×2
engage/index.html ×2
framework/index.html ×2
index.html ×2
Every failure is:
The two failures per page correspond to the shared Header and Footer navigation entries:
site-astro/src/components/Header.astro
site-astro/src/components/Footer.astro
There is a product entry for learn-cli in site-astro/src/data/site.ts whose public URL is https://agentculture.org/learn/, but no local Astro page currently generates that path.
Reproduction
From the repository root:
npm run build
uv run --frozen org site link-check --json
The build succeeds; the link check reports the 16 failures above.
Expected behavior
The Learn navigation target has a deliberate, working contract. Either:
- the Astro site builds a local
/learn/ route, or
- the shared navigation points to the intended external destination in a way the site and checker consistently support.
Choose the product-correct behavior rather than suppressing the checker.
Acceptance criteria
npm run build succeeds.
uv run --frozen org site link-check --json exits successfully.
- Header and Footer Learn links resolve from every generated page.
- Header/Footer navigation behavior remains consistent, including current-page semantics if
/learn/ becomes a local section.
- No unrelated route, content, or checker exclusions are introduced.
- A regression test or deterministic check prevents a shared navigation target from silently pointing to a missing route again.
Context
Discovered during the pre-wave baseline for the Presentations tab plan on branch feat/presentations-neurosymbolic-robots. That work records approved deviation d1: new presentation links must be clean while the exact 16 pre-existing /learn/ failures are treated as a no-regression baseline. This issue is the follow-up needed to restore the full green link-check contract.
Summary
The Astro site emits a site-wide
/learn/navigation link from bothHeader.astroandFooter.astro, but this checkout does not build a matching local route. The internal link checker therefore fails on every generated page.Current behavior
uv run --frozen org site link-check --jsonexits with code 1 and reports 16 broken links:agents/colleague/index.html×2agents/devague/index.html×2agents/index.html×2agents/lobes/index.html×2agents/reachy-mini-cli/index.html×2engage/index.html×2framework/index.html×2index.html×2Every failure is:
The two failures per page correspond to the shared Header and Footer navigation entries:
site-astro/src/components/Header.astrosite-astro/src/components/Footer.astroThere is a product entry for
learn-cliinsite-astro/src/data/site.tswhose public URL ishttps://agentculture.org/learn/, but no local Astro page currently generates that path.Reproduction
From the repository root:
The build succeeds; the link check reports the 16 failures above.
Expected behavior
The Learn navigation target has a deliberate, working contract. Either:
/learn/route, orChoose the product-correct behavior rather than suppressing the checker.
Acceptance criteria
npm run buildsucceeds.uv run --frozen org site link-check --jsonexits successfully./learn/becomes a local section.Context
Discovered during the pre-wave baseline for the Presentations tab plan on branch
feat/presentations-neurosymbolic-robots. That work records approved deviationd1: new presentation links must be clean while the exact 16 pre-existing/learn/failures are treated as a no-regression baseline. This issue is the follow-up needed to restore the full green link-check contract.