Skip to content

Open Graph card, a footer link to the source, and the repro command above the fold - #43

Merged
ChelseaKR merged 1 commit into
mainfrom
devrel/discoverability
Sep 3, 2026
Merged

Open Graph card, a footer link to the source, and the repro command above the fold#43
ChelseaKR merged 1 commit into
mainfrom
devrel/discoverability

Conversation

@ChelseaKR

Copy link
Copy Markdown
Owner

Three things that sit between a reader and a number, none of them about the measurement itself.

The link unfurls as a grey box

The pages already carried an Open Graph block — og:title, og:description, og:url, og:site_name, og:locale — with no image in it, and twitter:card set to summary. Every consumer of those tags falls back to a blank rectangle when og:image is absent, so the one channel these measurements actually travel through, somebody pasting the link, showed nothing about them.

Adds og:image (absolute; Open Graph consumers resolve it with no page context and drop a relative one) with og:image:type, :width, :height and :alt, and moves twitter:card to summary_large_image with a matching twitter:image and twitter:image:alt.

The card is 1200×630, drawn in the site's own light palette and its own serif, carrying the title, the one-line description and the three-state key the tables use. Nothing on it is a number, so it cannot go stale against a retrieval.

Where the card lives, and why not in site/

It is a committed source asset in assets/, copied into the output by build_site — not a static file dropped into site/.

make site-check diffs site/ against a fresh build from the acquired files. A file served out of site/ that no build writes would report as drift on every single run, and a check that always says the same thing stops being read. Copying it in the build also puts the card in build/site-offline and build/run-one/run-two, which is where the page checks and the determinism gate look at the pages that reference it — determinism now compares 6 files instead of 5.

The site never said where it was built

The footer credited CAL FIRE's licence and carried the unofficial disclaimer, and named the build nowhere. These pages publish inferences — docs/MARKERS.md exists precisely so a reader can check one — and a reader who wanted to had no route off the page to the field registry it came from. One footer line, rendered on all three pages.

The repro command was at line 129

Three hosted report pages are linked at line 5 of the README; uv sync and npm ci did not appear until line 129. Anyone wanting to verify the numbers rather than read them had to scroll past the whole methodology first.

make site-offline now sits next to the hosted links: it is the real pipeline over the committed fixtures, needs no network and no CAL FIRE download, and runs in about a minute. The block names the real-data path (make acquire, make site) and points at make site-check as the step that actually settles whether the served numbers are what this code produces today. The hosted reports still lead — this is four lines, not a relocation of the Build section.

Verification

site/ was rebuilt with make site from the acquired FRAP and DINS files rather than hand-edited. The diff is exactly the 9 head lines and 3 footer lines per page; no published count moved, which is its own small confirmation that the pipeline still reproduces the committed measurement.

  • make verify — passes end to end: lockfile, lint, format, mypy --strict, 690 tests, pip-audit, html-validate, axe-core in jsdom and in Chromium, WCAG 2.2 reflow at 320×256, npm audit on both toolchains, determinism.
  • make site-checksite/ is byte-identical to a fresh build from data/raw/.

Not fixed here

chelseakr.github.io is a shared origin serving several project sites from subpaths, so no project on it can own /robots.txt. Not this repo's to fix.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Pvm6FCdDXwtzA3juGxz6ba

…ot say where it was built

Three things a reader hits before they reach a number.

The pages carried an Open Graph block with no image in it. og:title, og:description and
og:url were there; og:image was not, and twitter:card said `summary`. Every consumer of
those tags falls back to a blank rectangle when there is no image, so the one place these
measurements travel through - somebody pasting the link - showed nothing about them. Adds
og:image with its type, dimensions and alt text, and moves twitter:card to
summary_large_image with a matching twitter:image.

The card itself is a committed source asset in assets/, copied into the output by
build_site rather than dropped into site/. site/ is diffed against a fresh build by
`make site-check`, so a file served from site/ that no build writes would report as drift
on every run, and a check that always says the same thing stops being read. Copying also
puts the card in build/site-offline and build/run-*, where the page checks and the
determinism gate look at the pages referencing it: determinism now compares 6 files.

The footer named CAL FIRE's licence and this project's disclaimer but never the build. A
reader who wanted to check an inference had no way from the page to the field registry it
came from. Adds one footer line to the source, on every page.

README linked three hosted report pages at line 5 and did not reach an install command
until line 129. The offline fixture build is the thing a sceptic can run in a minute with
no CAL FIRE download, so it now sits next to the hosted links, with the real-data path and
`make site-check` named as the step that actually settles whether the served numbers are
current. The hosted reports still lead.

site/ is rebuilt from the acquired FRAP and DINS files, not hand-edited: the diff is the
9 head lines and the 3 footer lines per page and no count moved. `make verify` and
`make site-check` both pass; site/ is byte-identical to a fresh build from data/raw/.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Pvm6FCdDXwtzA3juGxz6ba
@ChelseaKR
ChelseaKR merged commit 6eb7137 into main Sep 3, 2026
6 checks passed
@ChelseaKR
ChelseaKR deleted the devrel/discoverability branch September 3, 2026 03:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant