ci: add typecheck, docs and licence checks - #76
Merged
Conversation
kparisa
self-requested a review
September 3, 2026 06:31
kparisa
approved these changes
Sep 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a
checksjob that runs alongside the existing build:npm run typecheck—tsc --noEmit. There is no linter and no typecheck script today, so type errors only surface at the end of a full static export of every page.npm run check:links— internal/docslinks resolve, every page is listed in itsmeta.json, and every local asset referenced fromcontent/exists underpublic/.npm run check:headers— ASF licence headers on source files undersrc/andscripts/..asf.yamlparses as YAML. A typo there is silently ignored by infra today.All four pass on main as of this branch, so they lock in the current state rather than fixing a broken one. Three files were missing licence headers and now have them:
src/app/error.tsx,src/components/benchmark-chart.tsx,src/components/force-dark-theme.tsx.Separately, this makes the GitHub star fetch non-destructive. It now sends
GITHUB_TOKENwhen one is available, since the anonymous API limit is per IP and shared runners hit it routinely; and when a fetch fails it keeps the previously fetched value instead of overwriting it with a hardcoded fallback that had drifted about 800 stars behind.