@@ -398,12 +398,12 @@ func refreshDomainStatuses(ctx context.Context, states []domainRunState, apiURL,
398398 }
399399}
400400
401- // Test domains — 215 diverse real-world sites across many categories.
401+ // Test domains — ~400 diverse real-world sites across many categories.
402402var testDomains = []string {
403- // Australian businesses (10 )
403+ // Australian businesses (9 )
404404 "bankaust.com.au" , "bunnings.com.au" ,
405405 "responsibleinvestment.org" , "envirotecture.com.au" , "cpsn.org.au" , "teamharvey.co" , "goodnative.co" ,
406- "jbhifi.com.au" , "kmart.com.au" , "officeworks.com.au" ,
406+ "jbhifi.com.au" , "kmart.com.au" ,
407407
408408 // E-commerce & retail (7)
409409 "merrypeople.com" , "allbirds.com" , "everlane.com" , "warbyparker.com" ,
@@ -412,20 +412,19 @@ var testDomains = []string{
412412 // Tech blogs & publications (5)
413413 "csswizardry.com" , "heydesigner.com" , "sidebar.io" , "stefanjudis.com" , "smolblog.com" ,
414414
415- // WordPress blogs & design sites (10 )
416- "smashingmagazine.com" , "css-tricks.com" , "webdesignerdepot.com" , " sitepoint.com" , "alistapart.com" ,
415+ // WordPress blogs & design sites (9 )
416+ "smashingmagazine.com" , "css-tricks.com" , "sitepoint.com" , "alistapart.com" ,
417417 "designmodo.com" , "creativebloq.com" , "awwwards.com" , "onextrapixel.com" , "hongkiat.com" ,
418418
419- // Small business / agency sites (5)
420- "zeroseven.com.au" , "noice.com.au" , "willandco.com.au" ,
421- "tworedshoes.com.au" ,
419+ // Small business / agency sites (3)
420+ "zeroseven.com.au" , "willandco.com.au" , "tworedshoes.com.au" ,
422421
423422 // Developer docs & tools (8)
424423 "fly.io" , "railway.app" , "render.com" , "tailwindcss.com" ,
425424 "nextjs.org" , "react.dev" , "astro.build" , "svelte.dev" ,
426425
427426 // Additional dev frameworks & tooling (25)
428- "vitejs.dev" , "nuxt.com" , "remix.run" , " qwik.dev" ,
427+ "vitejs.dev" , "nuxt.com" , "qwik.dev" ,
429428 "parceljs.org" , "rollupjs.org" , "esbuild.github.io" , "bun.sh" , "deno.com" ,
430429 "cypress.io" , "vitest.dev" , "pnpm.io" , "turbo.build" ,
431430 "nx.dev" , "oclif.io" , "temporal.io" , "directus.io" , "strapi.io" ,
@@ -440,11 +439,11 @@ var testDomains = []string{
440439 // Niche e-commerce & DTC brands (14)
441440 "feals.com" , "magicspoon.com" , "atlascoffeeclub.com" ,
442441 "blueland.com" , "outerknown.com" , "grovemade.com" ,
443- "ridgewallet.com" , "ouraring.com" , "carawayhome.com" ,
442+ "ridgewallet.com" , "ouraring.com" ,
444443 "bellroy.com" , "ritual.com" , "cuyana.com" , "thesill.com" , "parachutehome.com" ,
445444
446- // Indie analytics & SaaS (7 )
447- "plausible.io" , "simpleanalytics.com" , "savvycal.com" , "commandbar.com" ,
445+ // Indie analytics & SaaS (6 )
446+ "plausible.io" , "simpleanalytics.com" , "savvycal.com" ,
448447 "pirsch.io" , "clarityflow.com" , "swapcard.com" ,
449448
450449 // Programming languages (8)
@@ -472,7 +471,7 @@ var testDomains = []string{
472471
473472 // Design & UX resources (7)
474473 "framer.com" , "nngroup.com" , "typewolf.com" ,
475- "fontsinuse.com" , "siteinspire.com" , " mobbin.com" , "lookup.design" ,
474+ "fontsinuse.com" , "mobbin.com" , "lookup.design" ,
476475
477476 // Learning & developer community (8)
478477 "freecodecamp.org" , "theodinproject.com" , "exercism.org" ,
@@ -483,16 +482,15 @@ var testDomains = []string{
483482 "ghost.org" , "beehiiv.com" , "buttondown.email" ,
484483 "obsidian.md" , "standardnotes.com" ,
485484
486- // Australian & NZ lifestyle brands (8)
487- "frank-body.com" , "afends.com" , "rollas.com.au" , "surfstitch.com" ,
488- "thankyou.co" , "cottonon.com" , "lovethelabel.com.au" , "eucalyptus.com.au" ,
485+ // Australian & NZ lifestyle brands (4)
486+ "afends.com" , "rollas.com.au" , "surfstitch.com" , "thankyou.co" ,
489487
490488 // Tech media & personal blogs (7)
491489 "arstechnica.com" , "thenextweb.com" , "paulgraham.com" ,
492490 "daringfireball.net" , "simonwillison.net" , "tonsky.me" , "fasterthanli.me" ,
493491
494- // DTC & lifestyle brands (9 )
495- "lululemon.com" , " cotopaxi.com" , "patagonia.com" ,
492+ // DTC & lifestyle brands (8 )
493+ "cotopaxi.com" , "patagonia.com" ,
496494 "mejuri.com" , "ugmonk.com" , "framebridge.com" ,
497495 "ruggable.com" , "prose.com" , "maude.com" ,
498496
@@ -502,6 +500,104 @@ var testDomains = []string{
502500
503501 // Editors & dev environments (2)
504502 "zed.dev" , "helix-editor.com" ,
503+
504+ // Cloud & infrastructure (10)
505+ "cloudflare.com" , "digitalocean.com" , "hetzner.com" , "linode.com" , "vultr.com" ,
506+ "scaleway.com" , "ovhcloud.com" , "backblaze.com" , "bunny.net" , "fastly.com" ,
507+
508+ // CI/CD & DevOps (10)
509+ "circleci.com" , "travisci.com" , "semaphoreci.com" , "harness.io" , "buildkite.com" ,
510+ "earthly.dev" , "depot.dev" , "codemagic.io" , "bitrise.io" , "woodpecker-ci.org" ,
511+
512+ // Monitoring & observability (10)
513+ "datadog.com" , "newrelic.com" , "dynatrace.com" , "honeycomb.io" , "signoz.io" ,
514+ "highlight.io" , "cronitor.io" , "uptimerobot.com" , "betterstack.com" , "checkly.com" ,
515+
516+ // Auth & identity (10)
517+ "auth0.com" , "okta.com" , "keycloak.org" , "ory.sh" , "zitadel.com" ,
518+ "logto.io" , "fusionauth.io" , "supertokens.com" , "permit.io" , "cerbos.dev" ,
519+
520+ // Databases & data (13)
521+ "mongodb.com" , "mariadb.org" , "mysql.com" , "clickhouse.com" , "timescale.com" ,
522+ "questdb.io" , "duckdb.org" , "motherduck.com" , "arangodb.com" ,
523+ "hasura.io" , "prisma.io" , "drizzle.team" , "sqlc.dev" ,
524+
525+ // Search (5)
526+ "algolia.com" , "meilisearch.com" , "typesense.org" , "elastic.co" , "opensearch.org" ,
527+
528+ // Email & messaging (8)
529+ "sendgrid.com" , "mailgun.com" , "postmarkapp.com" , "mailchimp.com" ,
530+ "convertkit.com" , "brevo.com" , "loops.so" , "emailoctopus.com" ,
531+
532+ // Payments & billing (7)
533+ "stripe.com" , "paddle.com" , "lemonsqueezy.com" , "gumroad.com" ,
534+ "chargebee.com" , "recurly.com" , "revenuecat.com" ,
535+
536+ // CMS & headless (7)
537+ "contentful.com" , "prismic.io" , "storyblok.com" , "tina.io" ,
538+ "keystatic.com" , "decapcms.org" , "builder.io" ,
539+
540+ // Documentation tools (8)
541+ "readme.com" , "stoplight.io" , "bump.sh" , "redocly.com" ,
542+ "swagger.io" , "postman.com" , "hoppscotch.io" , "httpie.io" ,
543+
544+ // Feature flags & experimentation (7)
545+ "launchdarkly.com" , "flagsmith.com" , "growthbook.io" , "unleash.io" ,
546+ "statsig.com" , "flipt.io" , "openfeature.dev" ,
547+
548+ // Frontend tooling (7)
549+ "storybook.js.org" , "chromatic.com" , "bundlephobia.com" , "packagephobia.com" ,
550+ "jsr.io" , "npmjs.com" , "socket.dev" ,
551+
552+ // Go ecosystem (6)
553+ "go.dev" , "pkg.go.dev" , "gobyexample.com" , "gorm.io" , "echo.labstack.com" , "gofiber.io" ,
554+
555+ // Rust ecosystem (4)
556+ "crates.io" , "docs.rs" , "lib.rs" , "blessed.rs" ,
557+
558+ // Python ecosystem (6)
559+ "pypi.org" , "pydantic.dev" , "sqlalchemy.org" , "rye.astral.sh" , "uv.astral.sh" , "python-poetry.org" ,
560+
561+ // More Australian businesses (20)
562+ "canva.com" , "atlassian.com" , "seek.com.au" , "realestate.com.au" , "carsales.com.au" ,
563+ "domain.com.au" , "abc.net.au" , "woolworths.com.au" , "coles.com.au" ,
564+ "harveynorman.com.au" , "bigw.com.au" , "myer.com.au" , "davidjones.com" ,
565+ "rebel.com.au" , "afl.com.au" , "nrl.com.au" , "cricket.com.au" ,
566+ "gumtree.com.au" , "redbubble.com" , "envato.com" ,
567+
568+ // Tech news & blogs (10)
569+ "techcrunch.com" , "theverge.com" , "ycombinator.com" , "indiehackers.com" , "hackernoon.com" ,
570+ "tldr.tech" , "javascriptweekly.com" , "golangweekly.com" , "rubyweekly.com" , "postgresweekly.com" ,
571+
572+ // Open source tools (9)
573+ "brew.sh" , "nixos.org" , "archlinux.org" , "ubuntu.com" , "debian.org" ,
574+ "fedoraproject.org" , "alpinelinux.org" , "freebsd.org" , "openbsd.org" ,
575+
576+ // Security & compliance (6)
577+ "semgrep.dev" , "falco.org" , "openpolicyagent.org" , "infisical.com" , "doppler.com" , "vaultproject.io" ,
578+
579+ // AI & ML tools (9)
580+ "huggingface.co" , "langchain.com" , "llamaindex.ai" , "ollama.com" , "replicate.com" ,
581+ "modal.com" , "together.ai" , "fireworks.ai" , "groq.com" ,
582+
583+ // APIs & GraphQL (3)
584+ "graphql.org" , "apollographql.com" , "trpc.io" ,
585+
586+ // Creative & gaming (4)
587+ "godotengine.org" , "blender.org" , "itch.io" , "gamedev.net" ,
588+
589+ // More productivity & SaaS (8)
590+ "notion.so" , "airtable.com" , "monday.com" , "asana.com" ,
591+ "clickup.com" , "todoist.com" , "producthunt.com" , "substack.com" ,
592+
593+ // Version control & code tools (4)
594+ "gitlab.com" , "bitbucket.org" , "sourcehut.org" , "codeberg.org" ,
595+
596+ // Design & accessibility (5)
597+ "figma.com" , "sketch.com" , "zeplin.io" , "a11yproject.com" , "webaim.org" ,
598+
599+ // Open standards (4)
600+ "w3.org" , "whatwg.org" , "tc39.es" , "ecma-international.org" ,
505601}
506602
507603func printJobHeader (id * identity , totalRuns , domainCount int , cfg * jobsConfig ) {
0 commit comments