[
  {
    "url": "https://alwaysriskon.com/",
    "type": "page",
    "slug": "/",
    "title": "Always Risk On",
    "status": "indexable",
    "updated": "2026-09-30",
    "related": []
  },
  {
    "url": "https://alwaysriskon.com/now",
    "type": "page",
    "slug": "/now",
    "title": "Now",
    "status": "indexable",
    "updated": "2026-09-28",
    "related": []
  },
  {
    "url": "https://alwaysriskon.com/positions",
    "type": "page",
    "slug": "/positions",
    "title": "Positions",
    "status": "indexable",
    "updated": "2026-09-28",
    "related": []
  },
  {
    "url": "https://alwaysriskon.com/positions/design-drafts",
    "type": "hub",
    "slug": "design-drafts",
    "title": "Three design drafts",
    "kind": "research",
    "status": "indexable",
    "updated": "2026-09-30",
    "related": [
      "https://alwaysriskon.com/writeups/the-floor-won"
    ]
  },
  {
    "url": "https://alwaysriskon.com/positions/newsletter-list",
    "type": "hub",
    "slug": "newsletter-list",
    "title": "The email list",
    "kind": "ops",
    "status": "noindex",
    "updated": "2026-09-30",
    "related": [
      "https://alwaysriskon.com/writeups/choosing-the-email-list"
    ]
  },
  {
    "url": "https://alwaysriskon.com/positions/site-foundation",
    "type": "hub",
    "slug": "site-foundation",
    "title": "Site foundation",
    "kind": "build",
    "status": "indexable",
    "updated": "2026-09-30",
    "related": [
      "https://alwaysriskon.com/writeups/building-this-site",
      "https://alwaysriskon.com/writeups/the-disclosure-gate"
    ]
  },
  {
    "url": "https://alwaysriskon.com/subscribe/confirmed",
    "type": "page",
    "slug": "/subscribe/confirmed",
    "title": "Confirmed",
    "status": "noindex",
    "related": []
  },
  {
    "url": "https://alwaysriskon.com/subscribe/failed",
    "type": "page",
    "slug": "/subscribe/failed",
    "title": "That did not go through",
    "status": "noindex",
    "related": []
  },
  {
    "url": "https://alwaysriskon.com/subscribe/pending",
    "type": "page",
    "slug": "/subscribe/pending",
    "title": "Check your inbox",
    "status": "noindex",
    "related": []
  },
  {
    "url": "https://alwaysriskon.com/tape",
    "type": "page",
    "slug": "/tape",
    "title": "Tape",
    "status": "indexable",
    "updated": "2026-09-30",
    "related": []
  },
  {
    "url": "https://alwaysriskon.com/writeups",
    "type": "page",
    "slug": "/writeups",
    "title": "Write-ups",
    "status": "indexable",
    "updated": "2026-09-30",
    "related": []
  },
  {
    "url": "https://alwaysriskon.com/writeups/building-this-site",
    "type": "writeup",
    "slug": "building-this-site",
    "title": "Building alwaysriskon.com: a foundation of gates before a single page",
    "template": "build-log",
    "kind": "build",
    "topic": "this-site",
    "entity": "Astro",
    "status": "indexable",
    "published": "2026-09-30",
    "words": 871,
    "related": [
      "https://alwaysriskon.com/writeups/ninety-kilobytes",
      "https://alwaysriskon.com/writeups/the-floor-won"
    ]
  },
  {
    "url": "https://alwaysriskon.com/writeups/choosing-the-email-list",
    "type": "writeup",
    "slug": "choosing-the-email-list",
    "title": "Why Always Risk On sends its email through Buttondown behind an adapter",
    "template": "case",
    "kind": "ops",
    "topic": "operating",
    "entity": "Buttondown",
    "status": "indexable",
    "published": "2026-09-30",
    "words": 763,
    "related": [
      "https://alwaysriskon.com/writeups/building-this-site"
    ]
  },
  {
    "url": "https://alwaysriskon.com/writeups/ninety-kilobytes",
    "type": "writeup",
    "slug": "ninety-kilobytes",
    "title": "What 90 KB of JavaScript buys on the Always Risk On home page",
    "template": "teardown",
    "kind": "research",
    "topic": "this-site",
    "entity": "GSAP",
    "status": "indexable",
    "published": "2026-09-30",
    "words": 866,
    "related": [
      "https://alwaysriskon.com/writeups/building-this-site"
    ]
  },
  {
    "url": "https://alwaysriskon.com/writeups/one-fan-a-day",
    "type": "writeup",
    "slug": "one-fan-a-day",
    "title": "The Always Risk On fan draws the same 180 price paths for everyone each London day",
    "template": "field-note",
    "kind": "research",
    "topic": "this-site",
    "entity": "Monte Carlo method",
    "status": "indexable",
    "published": "2026-09-30",
    "words": 340,
    "related": [
      "https://alwaysriskon.com/writeups/ninety-kilobytes"
    ]
  },
  {
    "url": "https://alwaysriskon.com/writeups/the-disclosure-gate",
    "type": "writeup",
    "slug": "the-disclosure-gate",
    "title": "How the disclosure gate on this site keeps a live trading edge silent",
    "template": "teardown",
    "kind": "research",
    "topic": "this-site",
    "entity": "alwaysriskon.com",
    "status": "indexable",
    "published": "2026-09-30",
    "words": 1106,
    "related": [
      "https://alwaysriskon.com/writeups/building-this-site"
    ]
  },
  {
    "url": "https://alwaysriskon.com/writeups/the-floor-won",
    "type": "writeup",
    "slug": "the-floor-won",
    "title": "Why the trading-floor draft won the design of alwaysriskon.com",
    "template": "field-note",
    "kind": "research",
    "topic": "this-site",
    "entity": "alwaysriskon.com",
    "status": "indexable",
    "published": "2026-09-30",
    "words": 362,
    "related": [
      "https://alwaysriskon.com/writeups/building-this-site",
      "https://alwaysriskon.com/writeups/the-disclosure-gate"
    ]
  }
]
