CI: validate relative links in nested repo Markdown examples #142
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
pokebedrock/wiki#142
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
assets/README.mdcurrently documents a relative image example that does not resolve onmain, and repo CI does not validate relative links inside nested non-doc Markdown likeassets/**/*.md.Evidence
assets/README.mdline 6 uses.assets/README.md, that path resolves outside the repo subtree it describes and does not exist.main: This printsFalse .../assets/images/ui.webpfor the referenced example path.npm run lint:linksonly crawlsdocs/**/*.{md,mdx}.npx linkinator "assets/**/*.md" --config linkinator.config.jsonon currentmainexits 0 and reportsSuccessfully scanned 1 links, so the current link check does not fail this stale local asset example.Impact
assets/README.mdget a broken relative path.mainwith no CI signal, even though this repo already treats contributor-facing docs as part of the maintenance surface.Acceptance criteria
assets/**/*.md.assets/README.mdso it matches the real repository layout.Fresh scan on current
origin/mainstill reproduces this gap.Evidence from today:
assets/README.mdstill contains./home/ubuntu/.openclaw/workspace/pokebedrock/assets/images/ui.webp, which does not exist.package.jsonstill scopeslint:linkstolinkinator "docs/**/*.{md,mdx}" --config linkinator.config.json, so repo Markdown outsidedocs/is not part of the normal CI path.npx linkinator "assets/**/*.md" --config linkinator.config.jsonrun still exits 0, so Linkinator alone is not catching this stale local relative target in nested Markdown.Impact remains the same: contributors can copy a broken asset-path example from tracked repo docs, and current CI still reports green.
Acceptance criteria still look right to me:
assets/**/*.md, and any other tracked nested Markdown we expect contributors to copy from).assets/README.mdis updated to use a path example that actually resolves from that file.Already fixed on
mainby94afc02(PR #151).assets/README.mduses, andassets/images/example-ui.svgexists.scripts/check-images.tsscansassets/**/*.mdand exits 1 when a local image is missing. Linkinator still ignores image targets, so the image check is the gate that fails closed.npm run lintruns that script.