SPB Git

registry: 2 128 targets / 165 services (136 status connectors), long-tail cadence, agent concurrency 24

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Simon-Pierre Boucher committed (Sep 12, 2026) parent bc1f919 Browse files

29 changed files +1,959 −25

modified apps/api/src/internetpressure/registry.py +1 −1
@@ -239,7 +239,7 @@ async def seed(*, targets: bool = True, services: bool = True, probes: bool = Tr
239 239 defaults = doc.get("defaults") or {}
240 240 for t in doc["targets"]:
241 241 row = {
242 − "target_id": t["id"], "name": t["name"], "hostname": t["host"], "url": t.get("url"), "ip": t.get("ip"),
242 + "target_id": str(t["id"]), "name": str(t["name"]), "hostname": str(t["host"]), "url": t.get("url"), "ip": t.get("ip"),
243 243 "port": t.get("port", 443), "category": t["cat"], "provider": t.get("provider"), "service_id": t.get("svc"),
244 244 "country": t.get("cc"), "region": regions.region_of_country(t.get("cc")),
245 245 "importance": t.get("imp", defaults.get("imp", 3)), "tier": t.get("tier", defaults.get("tier", 2)),
modified apps/web/qa/screens-prod/asn_13335-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/asn_13335-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/asns-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/asns-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/bgp-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/bgp-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/country_ca-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/country_ca-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/home-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/home-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/internet_na-east-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/internet_na-east-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/methodology-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/methodology-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/probes-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/probes-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/routes-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/routes-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/service_cloudflare-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/service_cloudflare-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/services-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/services-390.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/targets-1440.png +0 −0

Binary file not shown.

modified apps/web/qa/screens-prod/targets-390.png +0 −0

Binary file not shown.

modified data/seed/services.yaml +134 −3
@@ -1,8 +1,11 @@
1 1 # Services (provider pages `/service/<slug>`). `asns` are the provider's main origin ASNs (for BGP attribution),
2 2 # `status` describes the optional public status page connector (corroboration only — never a scoring dependency).
3 +# Connector kinds: statuspage (Atlassian Statuspage /api/v2/summary.json), statusio (status.io /1.0/status/<page_id>),
4 +# gcp_json, aws_rss, azure_rss, slack_json, heroku_v4. `status: null` = provider has no machine-readable public page
5 +# (custom page, incident.io/Instatus shape, or none) — verified 2026-09-12.
3 6 services:
4 7 - { slug: cloudflare, name: Cloudflare, category: cdn, asns: [13335], importance: 5, status: { kind: statuspage, url: "https://www.cloudflarestatus.com/api/v2/summary.json" } }
5 − - { slug: akamai, name: Akamai, category: cdn, asns: [20940, 16625, 63949], importance: 5, status: null }
8 + - { slug: akamai, name: Akamai, category: cdn, asns: [20940, 16625], importance: 5, status: { kind: statuspage, url: "https://www.akamaistatus.com/api/v2/summary.json" } }
6 9 - { slug: fastly, name: Fastly, category: cdn, asns: [54113], importance: 5, status: null }
7 10 - { slug: aws, name: Amazon Web Services, category: cloud, asns: [16509, 14618], importance: 5, status: { kind: aws_rss, url: "https://status.aws.amazon.com/rss/all.rss" } }
8 11 - { slug: gcp, name: Google Cloud, category: cloud, asns: [15169, 396982], importance: 5, status: { kind: gcp_json, url: "https://status.cloud.google.com/incidents.json" } }
@@ -12,7 +15,7 @@ services:
12 15 - { slug: meta, name: Meta, category: social, asns: [32934], importance: 5, status: null }
13 16 - { slug: apple, name: Apple, category: infrastructure, asns: [714, 6185], importance: 5, status: null }
14 17 - { slug: github, name: GitHub, category: developer, asns: [36459], importance: 5, status: { kind: statuspage, url: "https://www.githubstatus.com/api/v2/summary.json" } }
15 − - { slug: gitlab, name: GitLab, category: developer, asns: [], importance: 3, status: null }
18 + - { slug: gitlab, name: GitLab, category: developer, asns: [], importance: 3, status: { kind: statusio, url: "https://status.gitlab.com/1.0/status/5b36dc6502d06804c08349f7" } }
16 19 - { slug: npm, name: npm, category: developer, asns: [], importance: 4, status: { kind: statuspage, url: "https://status.npmjs.org/api/v2/summary.json" } }
17 20 - { slug: pypi, name: PyPI, category: developer, asns: [], importance: 4, status: { kind: statuspage, url: "https://status.python.org/api/v2/summary.json" } }
18 21 - { slug: docker, name: Docker Hub, category: developer, asns: [], importance: 4, status: { kind: statuspage, url: "https://www.dockerstatus.com/api/v2/summary.json" } }
@@ -24,7 +27,7 @@ services:
24 27 - { slug: alibaba, name: Alibaba, category: cloud, asns: [45102, 37963], importance: 4, status: null }
25 28 - { slug: vercel, name: Vercel, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://www.vercel-status.com/api/v2/summary.json" } }
26 29 - { slug: netlify, name: Netlify, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://www.netlifystatus.com/api/v2/summary.json" } }
27 − - { slug: heroku, name: Heroku, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.heroku.com/api/v4/current-status" } }
30 + - { slug: heroku, name: Heroku, category: developer, asns: [], importance: 3, status: { kind: heroku_v4, url: "https://status.heroku.com/api/v4/current-status" } }
28 31 - { slug: atlassian, name: Atlassian, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.atlassian.com/api/v2/summary.json" } }
29 32 - { slug: letsencrypt, name: "Let's Encrypt", category: infrastructure, asns: [], importance: 5, status: { kind: statusio, url: "https://letsencrypt.status.io/1.0/status/55957a99e800baa4470002da" } }
30 33 - { slug: wikimedia, name: Wikimedia, category: search, asns: [14907], importance: 4, status: null }
@@ -47,3 +50,131 @@ services:
47 50 - { slug: dropbox, name: Dropbox, category: infrastructure, asns: [19679], importance: 3, status: { kind: statuspage, url: "https://status.dropbox.com/api/v2/summary.json" } }
48 51 - { slug: salesforce, name: Salesforce, category: infrastructure, asns: [14340], importance: 4, status: null }
49 52 - { slug: okta, name: Okta, category: infrastructure, asns: [], importance: 3, status: null }
53 +
54 + # ───────── Added 2026-09-12 — cloud & hosting
55 + - { slug: linode, name: Akamai Linode, category: cloud, asns: [63949], importance: 3, status: { kind: statuspage, url: "https://status.linode.com/api/v2/summary.json" } }
56 + - { slug: vultr, name: Vultr, category: cloud, asns: [20473], importance: 3, status: null }
57 + - { slug: scaleway, name: Scaleway, category: cloud, asns: [12876], importance: 3, status: { kind: statuspage, url: "https://status.scaleway.com/api/v2/summary.json" } }
58 + - { slug: upcloud, name: UpCloud, category: cloud, asns: [202053], importance: 2, status: { kind: statuspage, url: "https://status.upcloud.com/api/v2/summary.json" } }
59 + - { slug: tencent, name: Tencent Cloud, category: cloud, asns: [132203, 45090], importance: 3, status: null }
60 + - { slug: huawei, name: Huawei Cloud, category: cloud, asns: [136907], importance: 3, status: null }
61 + - { slug: fly, name: Fly.io, category: cloud, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.flyio.net/api/v2/summary.json" } }
62 + - { slug: render, name: Render, category: cloud, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.render.com/api/v2/summary.json" } }
63 + - { slug: koyeb, name: Koyeb, category: cloud, asns: [], importance: 2, status: null }
64 + - { slug: wasabi, name: Wasabi, category: cloud, asns: [395717], importance: 2, status: { kind: statuspage, url: "https://status.wasabi.com/api/v2/summary.json" } }
65 + - { slug: bunny, name: bunny.net, category: cdn, asns: [200325], importance: 2, status: { kind: statuspage, url: "https://status.bunny.net/api/v2/summary.json" } }
66 + - { slug: he, name: Hurricane Electric, category: infrastructure, asns: [6939], importance: 4, status: null }
67 + # ───────── Developer platforms, registries, CI/CD, observability
68 + - { slug: quay, name: Quay.io, category: developer, asns: [], importance: 4, status: { kind: statuspage, url: "https://status.redhat.com/api/v2/summary.json" } }
69 + - { slug: redhat, name: Red Hat, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.redhat.com/api/v2/summary.json" } }
70 + - { slug: crates, name: crates.io, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.crates.io/api/v2/summary.json" } }
71 + - { slug: rubygems, name: RubyGems, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.rubygems.org/api/v2/summary.json" } }
72 + - { slug: maven, name: Maven Central, category: developer, asns: [], importance: 4, status: { kind: statuspage, url: "https://status.maven.org/api/v2/summary.json" } }
73 + - { slug: sonatype, name: Sonatype, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.sonatype.com/api/v2/summary.json" } }
74 + - { slug: gradle, name: Gradle, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.gradle.com/api/v2/summary.json" } }
75 + - { slug: jfrog, name: JFrog, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.jfrog.io/api/v2/summary.json" } }
76 + - { slug: cloudsmith, name: Cloudsmith, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.cloudsmith.com/api/v2/summary.json" } }
77 + - { slug: hashicorp, name: HashiCorp, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.hashicorp.com/api/v2/summary.json" } }
78 + - { slug: circleci, name: CircleCI, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.circleci.com/api/v2/summary.json" } }
79 + - { slug: newrelic, name: New Relic, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.newrelic.com/api/v2/summary.json" } }
80 + - { slug: datadog, name: Datadog, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.datadoghq.com/api/v2/summary.json" } }
81 + - { slug: grafana, name: Grafana Cloud, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.grafana.com/api/v2/summary.json" } }
82 + - { slug: sentry, name: Sentry, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.sentry.io/api/v2/summary.json" } }
83 + - { slug: honeycomb, name: Honeycomb, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.honeycomb.io/api/v2/summary.json" } }
84 + - { slug: elastic, name: Elastic Cloud, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.elastic.co/api/v2/summary.json" } }
85 + - { slug: statuspage, name: Atlassian Statuspage, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://metastatuspage.com/api/v2/summary.json" } }
86 + - { slug: mongodb, name: MongoDB Atlas, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.mongodb.com/api/v2/summary.json" } }
87 + - { slug: snowflake, name: Snowflake, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.snowflake.com/api/v2/summary.json" } }
88 + - { slug: databricks, name: Databricks, category: developer, asns: [], importance: 3, status: { kind: statusio, url: "https://status.databricks.com/1.0/status/5cf02dde58a00904bda41926" } }
89 + - { slug: confluent, name: Confluent Cloud, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.confluent.cloud/api/v2/summary.json" } }
90 + - { slug: supabase, name: Supabase, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.supabase.com/api/v2/summary.json" } }
91 + - { slug: neon, name: Neon, category: developer, asns: [], importance: 2, status: { kind: statusio, url: "https://neonstatus.com/1.0/status/6878fc85709daa75be6c7e3c" } }
92 + - { slug: tailscale, name: Tailscale, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.tailscale.com/api/v2/summary.json" } }
93 + - { slug: ngrok, name: ngrok, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.ngrok.com/api/v2/summary.json" } }
94 + - { slug: 1password, name: 1Password, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.1password.com/api/v2/summary.json" } }
95 + - { slug: postman, name: Postman, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.postman.com/api/v2/summary.json" } }
96 + - { slug: sendgrid, name: SendGrid, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.twilio.com/api/v2/summary.json" } }
97 + - { slug: mailgun, name: Mailgun, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.mailgun.com/api/v2/summary.json" } }
98 + - { slug: brevo, name: Brevo, category: messaging, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.brevo.com/api/v2/summary.json" } }
99 + - { slug: launchdarkly, name: LaunchDarkly, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.launchdarkly.com/api/v2/summary.json" } }
100 + - { slug: segment, name: Segment, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.segment.com/api/v2/summary.json" } }
101 + - { slug: mixpanel, name: Mixpanel, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://www.mixpanelstatus.com/api/v2/summary.json" } }
102 + - { slug: amplitude, name: Amplitude, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.amplitude.com/api/v2/summary.json" } }
103 + - { slug: cloudinary, name: Cloudinary, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.cloudinary.com/api/v2/summary.json" } }
104 + - { slug: imgix, name: imgix, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.imgix.com/api/v2/summary.json" } }
105 + - { slug: contentful, name: Contentful, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://www.contentfulstatus.com/api/v2/summary.json" } }
106 + - { slug: sanity, name: Sanity, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://www.sanity-status.com/api/v2/summary.json" } }
107 + - { slug: pusher, name: Pusher, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.pusher.com/api/v2/summary.json" } }
108 + - { slug: ably, name: Ably, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.ably.com/api/v2/summary.json" } }
109 + - { slug: pubnub, name: PubNub, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.pubnub.com/api/v2/summary.json" } }
110 + - { slug: mux, name: Mux, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.mux.com/api/v2/summary.json" } }
111 + - { slug: figma, name: Figma, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.figma.com/api/v2/summary.json" } }
112 + - { slug: miro, name: Miro, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.miro.com/api/v2/summary.json" } }
113 + - { slug: asana, name: Asana, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.asana.com/api/v2/summary.json" } }
114 + - { slug: trello, name: Trello, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://trello.status.atlassian.com/api/v2/summary.json" } }
115 + - { slug: airtable, name: Airtable, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.airtable.com/api/v2/summary.json" } }
116 + - { slug: zapier, name: Zapier, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.zapier.com/api/v2/summary.json" } }
117 + - { slug: clickup, name: ClickUp, category: developer, asns: [], importance: 2, status: { kind: statusio, url: "https://status.clickup.com/1.0/status/5b6e0963c662144d00913a09" } }
118 + - { slug: monday, name: monday.com, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.monday.com/api/v2/summary.json" } }
119 + - { slug: box, name: Box, category: developer, asns: [33011], importance: 3, status: { kind: statuspage, url: "https://status.box.com/api/v2/summary.json" } }
120 + - { slug: hubspot, name: HubSpot, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.hubspot.com/api/v2/summary.json" } }
121 + - { slug: duo, name: Cisco Duo, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.duo.com/api/v2/summary.json" } }
122 + - { slug: jumpcloud, name: JumpCloud, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.jumpcloud.com/api/v2/summary.json" } }
123 + - { slug: pingidentity, name: Ping Identity, category: developer, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.pingidentity.com/api/v2/summary.json" } }
124 + - { slug: paloalto, name: Palo Alto Networks, category: developer, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.paloaltonetworks.com/api/v2/summary.json" } }
125 + - { slug: mimecast, name: Mimecast, category: developer, asns: [], importance: 2, status: { kind: statusio, url: "https://status.mimecast.com/1.0/status/5d849b1c02e65b3ec45369d4" } }
126 + - { slug: imperva, name: Imperva, category: cdn, asns: [19551], importance: 2, status: { kind: statuspage, url: "https://status.imperva.com/api/v2/summary.json" } }
127 + - { slug: sucuri, name: Sucuri, category: cdn, asns: [30148], importance: 2, status: { kind: statuspage, url: "https://status.sucuri.net/api/v2/summary.json" } }
128 + - { slug: gcore, name: Gcore, category: cdn, asns: [199524], importance: 2, status: null }
129 + # ───────── Messaging & social
130 + - { slug: matrix, name: Matrix.org, category: messaging, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.matrix.org/api/v2/summary.json" } }
131 + - { slug: element, name: Element, category: messaging, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.element.io/api/v2/summary.json" } }
132 + - { slug: mattermost, name: Mattermost, category: messaging, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.mattermost.com/api/v2/summary.json" } }
133 + - { slug: proton, name: Proton, category: messaging, asns: [62371], importance: 3, status: { kind: statuspage, url: "https://status.proton.me/api/v2/summary.json" } }
134 + - { slug: bandwidth, name: Bandwidth, category: messaging, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.bandwidth.com/api/v2/summary.json" } }
135 + - { slug: telnyx, name: Telnyx, category: messaging, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.telnyx.com/api/v2/summary.json" } }
136 + - { slug: sinch, name: Sinch, category: messaging, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.sinch.com/api/v2/summary.json" } }
137 + - { slug: pinterest, name: Pinterest, category: social, asns: [26669], importance: 3, status: { kind: statuspage, url: "https://www.pintereststatus.com/api/v2/summary.json" } }
138 + - { slug: medium, name: Medium, category: social, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.medium.com/api/v2/summary.json" } }
139 + - { slug: strava, name: Strava, category: social, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.strava.com/api/v2/summary.json" } }
140 + # ───────── Streaming & gaming
141 + - { slug: twitch, name: Twitch, category: streaming, asns: [46489], importance: 3, status: { kind: statuspage, url: "https://status.twitch.com/api/v2/summary.json" } }
142 + - { slug: roblox, name: Roblox, category: streaming, asns: [22697], importance: 4, status: { kind: statusio, url: "https://api.status.io/1.0/status/59db90dbcdeb2f04dadcf16d" } }
143 + - { slug: epicgames, name: Epic Games, category: streaming, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.epicgames.com/api/v2/summary.json" } }
144 + # ───────── Commerce, web builders & registrars
145 + - { slug: bigcommerce, name: BigCommerce, category: commerce, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.bigcommerce.com/api/v2/summary.json" } }
146 + - { slug: wix, name: Wix, category: commerce, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.wix.com/api/v2/summary.json" } }
147 + - { slug: squarespace, name: Squarespace, category: commerce, asns: [53831], importance: 3, status: { kind: statuspage, url: "https://status.squarespace.com/api/v2/summary.json" } }
148 + - { slug: godaddy, name: GoDaddy, category: commerce, asns: [26496], importance: 3, status: { kind: statuspage, url: "https://status.godaddy.com/api/v2/summary.json" } }
149 + - { slug: gandi, name: Gandi, category: commerce, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.gandi.net/api/v2/summary.json" } }
150 + # ───────── Finance & payments
151 + - { slug: coinbase, name: Coinbase, category: finance, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.coinbase.com/api/v2/summary.json" } }
152 + - { slug: kraken, name: Kraken, category: finance, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.kraken.com/api/v2/summary.json" } }
153 + - { slug: bitstamp, name: Bitstamp, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.bitstamp.net/api/v2/summary.json" } }
154 + - { slug: gemini, name: Gemini Exchange, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.gemini.com/api/v2/summary.json" } }
155 + - { slug: blockchain, name: Blockchain.com, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.blockchain.com/api/v2/summary.json" } }
156 + - { slug: etherscan, name: Etherscan, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.etherscan.io/api/v2/summary.json" } }
157 + - { slug: robinhood, name: Robinhood, category: finance, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.robinhood.com/api/v2/summary.json" } }
158 + - { slug: wealthsimple, name: Wealthsimple, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.wealthsimple.com/api/v2/summary.json" } }
159 + - { slug: wise, name: Wise, category: finance, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.wise.com/api/v2/summary.json" } }
160 + - { slug: klarna, name: Klarna, category: finance, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.klarna.com/api/v2/summary.json" } }
161 + - { slug: affirm, name: Affirm, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.affirm.com/api/v2/summary.json" } }
162 + - { slug: mollie, name: Mollie, category: finance, asns: [], importance: 2, status: null }
163 + - { slug: gocardless, name: GoCardless, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://www.gocardless-status.com/api/v2/summary.json" } }
164 + - { slug: plaid, name: Plaid, category: finance, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.plaid.com/api/v2/summary.json" } }
165 + - { slug: quickbooks, name: QuickBooks, category: finance, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.quickbooks.intuit.com/api/v2/summary.json" } }
166 + - { slug: xero, name: Xero, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.xero.com/api/v2/summary.json" } }
167 + - { slug: brex, name: Brex, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.brex.com/api/v2/summary.json" } }
168 + - { slug: expensify, name: Expensify, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.expensify.com/api/v2/summary.json" } }
169 + - { slug: gusto, name: Gusto, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.gusto.com/api/v2/summary.json" } }
170 + - { slug: rippling, name: Rippling, category: finance, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.rippling.com/api/v2/summary.json" } }
171 + # ───────── AI
172 + - { slug: mistral, name: Mistral AI, category: ai, asns: [], importance: 3, status: null }
173 + - { slug: cohere, name: Cohere, category: ai, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.cohere.com/api/v2/summary.json" } }
174 + - { slug: elevenlabs, name: ElevenLabs, category: ai, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.elevenlabs.io/api/v2/summary.json" } }
175 + # ───────── Education
176 + - { slug: coursera, name: Coursera, category: search, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.coursera.org/api/v2/summary.json" } }
177 + - { slug: khanacademy, name: Khan Academy, category: search, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.khanacademy.org/api/v2/summary.json" } }
178 + - { slug: udemy, name: Udemy, category: search, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.udemy.com/api/v2/summary.json" } }
179 + - { slug: duolingo, name: Duolingo, category: search, asns: [], importance: 2, status: { kind: statuspage, url: "https://status.duolingo.com/api/v2/summary.json" } }
180 + - { slug: instructure, name: Instructure (Canvas), category: search, asns: [], importance: 3, status: { kind: statuspage, url: "https://status.instructure.com/api/v2/summary.json" } }
modified data/targets/targets.yaml +1819 −15
Large diff (1,949 lines) is not loaded by default to keep the page fast.Load diff
modified packages/config/pressure.yaml +3 −3
Large diff (12 lines) is not loaded by default to keep the page fast.Load diff
modified services/probe-agent/deploy/install.sh +2 −3
Large diff (13 lines) is not loaded by default to keep the page fast.Load diff
Menu

Theme