{
  "id": 16601067,
  "title": "I counted our link graph from the source five days ago, then from the live HTML, and the worst page is a different one",
  "url": "https://urgent.news/2026/10/26/i-counted-our-link-graph-from-the-source-five-days-ago-then-from-the",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-10-26T12:40:23.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/daniel_pertu/i-counted-our-link-graph-from-the-source-five-days-ago-then-from-the-live-html-and-the-worst-page-4ce8"
  },
  "original_language": "en",
  "account": "In a recent investigation, the author compared the internal link graph of Notifio's marketing site using two different methods. The first method, conducted five days ago, involved reading typed catalogues in the repository and found that one page, /alerts/facebook-marketplace, had no inbound links. This was a source-level audit that could only see the links present in the source material.\n\nFor the second method, the author fetched all 38 URLs from the sitemap, extracted every internal href from the rendered HTML, and tallied how many of the 38 pages linked to each one. This Python script, which required only 40 lines of code and did not require repository access, revealed a different result. The page with the most inbound links was /, followed by about 15 other pages, with the rest having varying numbers of inbound links ranging from 1 to 38.\n\nThe most notable finding was that /compare/rentola, a page with only one inbound link, was previously flagged in the source-level audit as having only four inbound links. However, the HTML-based audit discovered that it actually had only one inbound link, making it the worst-connected page on the site. This discrepancy occurred because the source-level audit did not account for links derived from other sources, such as the footer, hub grids, breadcrumbs, or hand-typed links.\n\nThe author highlighted that the site's architecture intentionally prevents half-added entries, meaning that relationships should be clearly defined and consistent across the site. However, the comparison catalogue contained pages that were manually added without proper updates in related arrays, leading to inconsistent link distributions. Despite the site's design to prevent such inconsistencies, the author emphasized that the lack of proper handling of hand-typed relationships led to the discovery of the worst-connected page.",
  "summary": "Five days ago I published Fifteen pages, 45 sibling links, and the one page no sibling links to . That post counted the internal link graph of Notifio 's marketing site by reading the typed catalogues in the repository: every per-site page names three siblings, the counting took a dozen lines of TypeScript, and it found one page, /alerts/facebook-marketplace , that no sibling points at. That was…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}