Repository navigation
chore: add CI, a drift check, a licence and contributor guidance - #11
Merged
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
ElianCodes
force-pushed
the
seo/structured-data-and-social-cards
branch
from
September 26, 2026 20:23
78f160f to
eb3930a
Compare
ElianCodes
force-pushed
the
chore/ci-checks-and-hygiene
branch
from
September 26, 2026 20:23
704e241 to
ef8e9a9
Compare
This repo had no .github/, no CI and no LICENSE — alone among the Coral repos. A broken cross-link or bad frontmatter shipped unnoticed. - ci.yml builds and checks that every internal link resolves. Renaming a page used to quietly take its inbound links with it. - env-drift.yml reads each module's .env.example straight from its repo and fails when a variable is missing from the matching docs page. This is the check that would have caught LIBRARIAN_REQUIRE_LOGIN. It runs weekly as well as on PRs, because upstream drifts without anything changing here. On its first run it found AURORA_STREAM_TOKEN_SECRET, added on aurora@main and undocumented. Deliberately one-directional: docs legitimately describe variables that code reads but .env.example omits, such as HOST and PORT. Variables declared upstream but read by nothing live in KNOWN_DEAD with a reason — documenting them would imply they work. - AGENTS.md records the rule that produced the content rewrite: verify every claim against the source repo, and where a README and the code disagree, the code wins. - LICENSE (MIT), matching the npm packages' declared licence. - styles.css: restores the code-block copy button, which was hidden on a site made almost entirely of install commands; drops the pinned Starlight hash class .header.astro-wh26sp3i, which silently stops matching on any upgrade; and removes the dead rules styling a theme switcher that is display:none. - Drops Tailwind. It was installed and configured but never imported — the stylesheet is hand-written CSS throughout.
ElianCodes
force-pushed
the
seo/structured-data-and-social-cards
branch
from
September 26, 2026 20:33
eb3930a to
1a5b19d
Compare
ElianCodes
force-pushed
the
chore/ci-checks-and-hygiene
branch
from
September 26, 2026 20:33
ef8e9a9 to
1d8417e
Compare
Base automatically changed from
seo/structured-data-and-social-cards
to
main
September 28, 2026 10:01
This branch was successfully deployed
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.
3 of 3. Stacked on #10. Review #9 → #10 → this.
This repo had no
.github/, no CI and no LICENSE — alone among the Coralrepos. A broken cross-link or bad frontmatter shipped unnoticed.
The drift check is the point
env-drift.ymlfetches each module's.env.examplestraight from its repo andfails when a variable is missing from the matching docs page. All seven are
public, so it needs no token and no submodules.
This is the check that would have caught
LIBRARIAN_REQUIRE_LOGIN. On itsfirst run it already found one:
AURORA_STREAM_TOKEN_SECRET, added onaurora@mainand undocumented here. It's documented in #9 as a result.It runs weekly as well as on PRs, because upstream drifts without anything
changing in this repo.
Two deliberate design choices:
.env.exampleomits —HOSTandPORTin most modules. Flagging those wouldbe noise that gets the check ignored.
KNOWN_DEAD. Variables declared upstream but read by nothing live in alist with a reason each.
PLEX_URLandPLEX_TOKENare there: documentingthem would imply they work. The check also tells you when an entry is gone
upstream so the list does not rot.
ci.ymlbuilds and verifies every internal link resolves — renaming a page usedto quietly take its inbound links with it.
Also
AGENTS.mdrecords the rule that produced docs: describe the code that actually ships #9: verify every claim againstthe source repo, and where a README and the code disagree, the code wins.
Several READMEs are stale in ways the code is not.
LICENSE(MIT), matching the npm packages' declared licence.styles.css— restores the code-block copy button, which was hiddenon a site made almost entirely of install commands; drops the pinned Starlight
hash class
.header.astro-wh26sp3i, which silently stops matching on anyupgrade; removes ~25 lines of dead CSS styling a theme switcher that is also
display: none.is hand-written CSS throughout.
Verification
pnpm buildclean,pnpm check:linksandpnpm check:envboth pass. Each ofthe three commits in this stack was built independently, not just the tip.
The restored copy button was confirmed against the built CSS: the remaining
.copy{display:none}rules are Expressive Code's own@media (scripting: none)fallback and the print stylesheet, which are correct.