familyguy.co.ukUnofficial
fan encyclopedia

Intervention ledger

Every change, dated

What changed on this site, when, why, and what it was expected to do. Written before the outcome was known, and never edited afterwards: a correction gets a new entry.

  1. before launch

    Per-page modified dates

    Every URL had carried the same lastmod, the data refresh stamp. Each page now takes its date from the last commit that changed the file its facts come from, and the JSON-LD agrees with the sitemap.

    Why. One date across 673 URLs tells a crawler nothing about what moved, and it had already gone stale.

    Expected. Better recrawl targeting after launch. Nothing measurable before it.

  2. before launch

    EntityMap index published

    An entity-first index of the series and its characters, 38 entities and 89 relations, with a Wikidata identifier on every character and an HTML companion generated from the same data.

    Why. Retrieval systems increasingly want entities rather than pages.

    Expected. Unknown. Adoption of the format is early, which is the point of publishing it now.

  3. before launch

    Tool registry, MCP endpoint and server card

    Eight deterministic lookup tools defined once and served as a JSON manifest, as an MCP endpoint over Streamable HTTP, and as api-catalog entries. No model generates an answer; every result is a lookup over the same rows the pages render.

    Why. Everything the site can do should be callable, not just readable.

    Expected. Closes the audit's MCP gap. Whether anything calls it is one of the questions the talk exists to answer.

  4. before launch

    Wrote the content: 461 episode summaries and 37 character profiles

    Story summaries and sourced production notes for every episode, written from cited Wikipedia revisions, plus cast from the IMDb datasets and guest voices from TVmaze. Machine-checked for house style and for any run of eight words shared with the source.

    Why. Until this point the site had facts but nothing to read. It is also what makes a which-episode lookup possible at all.

    Expected. The interesting question. A readiness audit run afterwards scored the same band as before, so the content moved nothing by itself.

  5. before launch

    Cross-checked every episode against two independent sources

    Wikidata and the IMDb non-commercial datasets, compared field by field. A disagreement blocks the build until it is corrected with a documented override or accepted with a written reason.

    Why. A reference site is worth nothing if it is wrong, and a claim of accuracy is worth nothing if it is not mechanical.

    Expected. No ranking effect. It is the reason the content can be trusted.

  6. before launch

    Agent-readiness stack

    Chunked sitemaps, llms.txt, RSS and JSON feeds, per-type schema endpoints, schemamap, RFC 9727 api-catalog, security.txt, tdmrep.json, Content-Signal in robots.txt, Link headers advertising all of it, and conditional requests through the Worker.

    Why. The launch state is the frozen baseline. Everything here had to be in place before launch so that later changes are attributable.

    Expected. No immediate effect while gated. This is the baseline the talk measures from.

  7. before launch

    Site built and gated

    Astro build on Cloudflare Workers: episode database from a Wikipedia seed, markdown twin of every page, client-side search. Put behind HTTP Basic Auth so nothing was crawlable.

    Why. The experiment needs a site that exists before it needs a site that is indexed.

    Expected. No effect. Nothing could reach it.