{
  "schema": "tnet-uptime/1",
  "generator": "tnet-uptime-rollup 1.0.0",
  "generated_at": "2026-09-17T18:09:25+00:00",
  "cycle_seconds": 30,
  "gap_threshold_seconds": 90,
  "measured_since": "2026-09-10",
  "vantage": {
    "host": "meshd-quorum-do",
    "provider": "DigitalOcean, New York",
    "why": "Deliberately not on any machine it measures, and not on a control-plane node \u2014 a watcher that can be promoted to primary ends up watching itself."
  },
  "method": "One sample every 30 seconds from outside our network. A surface is counted DOWN for a whole 30-second cycle if any of its checks failed in that cycle. Time when the watchdog was not running is subtracted from the window and reported separately as not-measured \u2014 never counted as up.",
  "excluded_checks": {
    "meta.peer": "our dead-men watching each other \u2014 internal",
    "deep.jobs": "scheduled jobs still committing \u2014 internal freshness",
    "deep.synthetics": "our own lab fleet reporting \u2014 internal",
    "deep.status": "our status feed answering \u2014 monitoring, not the product",
    "status.page": "status.minaki.io itself \u2014 monitoring, not the product",
    "canary": "exists only while a drill is running"
  },
  "surfaces": {
    "signup_and_control_plane": {
      "label": "Sign-up, sign-in and the control plane",
      "what": "Everything a customer needs in order to buy an address, sign in, enrol a machine or change their plan \u2014 fetched from outside our network, through both hubs, every 30 seconds.",
      "checks": [
        "auth.login",
        "auth.oidc",
        "auth.token",
        "deep.write",
        "io.checkout.ewr-1",
        "io.checkout.mono-1",
        "io.docs.ewr-1",
        "io.docs.mono-1",
        "io.healthz.ewr-1",
        "io.healthz.mono-1",
        "io.login.ewr-1",
        "io.login.mono-1",
        "io.root.ewr-1",
        "io.root.mono-1",
        "mesh.healthz.ewr-1",
        "mesh.healthz.mono-1"
      ],
      "check_count": 16,
      "since_measurement_began": {
        "days_requested": null,
        "days_with_data": 8,
        "observations": 20137,
        "down_observations": 7,
        "measured_seconds": 604110,
        "not_measured_seconds": 353,
        "down_seconds": 210,
        "fully_covered": true,
        "availability_pct": 99.9652
      },
      "last_30_days": {
        "days_requested": 30,
        "days_with_data": 8,
        "observations": 20137,
        "down_observations": 7,
        "measured_seconds": 604110,
        "not_measured_seconds": 353,
        "down_seconds": 210,
        "fully_covered": false,
        "availability_pct": null
      },
      "last_7_days": {
        "days_requested": 7,
        "days_with_data": 7,
        "observations": 19459,
        "down_observations": 5,
        "measured_seconds": 583770,
        "not_measured_seconds": 0,
        "down_seconds": 150,
        "fully_covered": true,
        "availability_pct": 99.9743
      },
      "incidents": [
        {
          "surface": "signup_and_control_plane",
          "from": "2026-09-17T16:22:59+00:00",
          "to": "2026-09-17T16:23:29+00:00",
          "seconds": 30,
          "cycles": 1,
          "checks": [
            "io.checkout.ewr-1",
            "io.checkout.mono-1",
            "io.docs.mono-1",
            "io.healthz.ewr-1",
            "io.healthz.mono-1",
            "io.login.mono-1",
            "io.root.ewr-1",
            "mesh.healthz.ewr-1"
          ],
          "note": "We shipped a release. The control plane restarts during a deploy and the site returned errors for about thirty seconds. Tunnels already up were unaffected -- they do not run through the control plane -- but signing in and buying did not work, so it is counted.",
          "cause": "release",
          "planned": true
        },
        {
          "surface": "signup_and_control_plane",
          "from": "2026-09-16T20:35:33+00:00",
          "to": "2026-09-16T20:37:04+00:00",
          "seconds": 90,
          "cycles": 3,
          "checks": [
            "deep.write",
            "io.checkout.ewr-1",
            "io.checkout.mono-1",
            "io.docs.ewr-1",
            "io.docs.mono-1",
            "io.healthz.ewr-1",
            "io.healthz.mono-1",
            "io.login.ewr-1",
            "io.login.mono-1",
            "io.root.ewr-1",
            "io.root.mono-1",
            "mesh.healthz.ewr-1",
            "mesh.healthz.mono-1"
          ],
          "note": "A deliberate failure drill. We stopped the control plane on the leader on purpose to find out how long recovery takes and whether our alarms fire. The site returned errors for about a minute and a half. We publish drills as downtime because that is what they are.",
          "cause": "chaos drill",
          "planned": true
        },
        {
          "surface": "signup_and_control_plane",
          "from": "2026-09-12T00:44:29+00:00",
          "to": "2026-09-12T00:44:59+00:00",
          "seconds": 30,
          "cycles": 1,
          "checks": [
            "io.checkout.ewr-1",
            "io.checkout.mono-1",
            "io.docs.ewr-1",
            "io.docs.mono-1",
            "io.healthz.ewr-1",
            "io.healthz.mono-1",
            "io.login.ewr-1",
            "io.login.mono-1",
            "io.root.ewr-1",
            "io.root.mono-1",
            "mesh.healthz.ewr-1",
            "mesh.healthz.mono-1"
          ],
          "note": "Both hubs stopped answering our watchdog for a single 30-second check and were fine on the next one. The database write probe in the same cycle succeeded, so this was not the control plane falling over. We have not established the cause, and we are not going to invent one; it is counted as downtime.",
          "cause": "not established",
          "planned": false
        },
        {
          "surface": "signup_and_control_plane",
          "from": "2026-09-10T19:09:40+00:00",
          "to": "2026-09-10T19:10:41+00:00",
          "seconds": 60,
          "cycles": 2,
          "checks": [
            "auth.login",
            "auth.oidc",
            "auth.token"
          ],
          "note": "We were hardening the sign-in service and restarted it. Sign-in was unavailable for about a minute; addresses and tunnels already up were unaffected, because they do not go through sign-in.",
          "cause": "auth hardening",
          "planned": true
        }
      ]
    },
    "website": {
      "label": "tunnelnet.com",
      "what": "The public site and its guides. It runs on a different machine at a different provider from the control plane, so it is measured separately \u2014 and it stays up when the control plane does not.",
      "checks": [
        "com.guide",
        "com.guides",
        "com.pricing",
        "com.root"
      ],
      "check_count": 4,
      "since_measurement_began": {
        "days_requested": null,
        "days_with_data": 8,
        "observations": 20137,
        "down_observations": 0,
        "measured_seconds": 604110,
        "not_measured_seconds": 353,
        "down_seconds": 0,
        "fully_covered": true,
        "availability_pct": 100.0
      },
      "last_30_days": {
        "days_requested": 30,
        "days_with_data": 8,
        "observations": 20137,
        "down_observations": 0,
        "measured_seconds": 604110,
        "not_measured_seconds": 353,
        "down_seconds": 0,
        "fully_covered": false,
        "availability_pct": null
      },
      "last_7_days": {
        "days_requested": 7,
        "days_with_data": 7,
        "observations": 19459,
        "down_observations": 0,
        "measured_seconds": 583770,
        "not_measured_seconds": 0,
        "down_seconds": 0,
        "fully_covered": true,
        "availability_pct": 100.0
      },
      "incidents": []
    }
  },
  "days": {
    "2026-09-10": {
      "down": {
        "signup_and_control_plane": 2
      },
      "gap_s": 353,
      "samples": 678
    },
    "2026-09-11": {
      "down": {},
      "gap_s": 0,
      "samples": 2880
    },
    "2026-09-12": {
      "down": {
        "signup_and_control_plane": 1
      },
      "gap_s": 0,
      "samples": 2880
    },
    "2026-09-13": {
      "down": {},
      "gap_s": 0,
      "samples": 2880
    },
    "2026-09-14": {
      "down": {},
      "gap_s": 0,
      "samples": 2880
    },
    "2026-09-15": {
      "down": {},
      "gap_s": 0,
      "samples": 2880
    },
    "2026-09-16": {
      "down": {
        "signup_and_control_plane": 3
      },
      "gap_s": 0,
      "samples": 2880
    },
    "2026-09-17": {
      "down": {
        "signup_and_control_plane": 1
      },
      "gap_s": 0,
      "samples": 2179
    }
  }
}