{
  "schema": 1,
  "enabled": true,
  "coverageStartedAt": "2026-10-11T13:03:20.265Z",
  "updatedAt": "2026-10-30T10:22:32.440Z",
  "policy": {
    "activeCap": 40,
    "scanBudget": 20,
    "explorationSlots": 5,
    "maxDiscoveriesPerDay": 3,
    "timezone": "Europe/Vilnius",
    "review": "Daily promotion and retirement review; later hosted research scans may use its unused three-probe discovery budget",
    "promotion": {
      "minAgeDays": 7,
      "minSuccessfulScans": 6,
      "minCheckedCandidates": 10,
      "minPassedChecks": 3,
      "minPublished": 1,
      "minimumAverageScore": "current_publish_threshold"
    },
    "retirement": {
      "minAgeDays": 7,
      "minSuccessfulScans": 10,
      "minCheckedCandidates": 10,
      "maxPassRateExclusive": 0.1,
      "consecutiveAccessFailures": 10
    }
  },
  "sources": [
    {
      "id": "e20bcacf021524725d3fc275",
      "name": "n8n · official AI workflows",
      "url": "https://n8n.io/ai",
      "kind": "html",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://n8n.io",
            "robotsUrl": "https://n8n.io/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:21.627Z",
            "redirects": [],
            "state": "available",
            "bytes": 76,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://n8n.io/ai",
            "reason": "No matching robots Disallow rule."
          },
          {
            "origin": "https://n8n.io",
            "robotsUrl": "https://n8n.io/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:21.627Z",
            "redirects": [],
            "state": "available",
            "bytes": 76,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://n8n.io/ai/",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [
          {
            "url": "https://n8n.io/ai",
            "status": 308,
            "next": "https://n8n.io/ai/"
          }
        ],
        "httpStatus": 200,
        "contentType": "text/html; charset=utf-8",
        "resolvedUrl": "https://n8n.io/ai/",
        "fetchedAt": "2026-10-11T13:03:21.712Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 1
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:50.756Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.756Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.756Z"
      },
      "yield": {
        "scans": 392,
        "successfulScans": 392,
        "itemsFetched": 392,
        "distinctItems": 1,
        "candidates": 1,
        "checkedCandidates": 1,
        "passedChecks": 1,
        "scoreSamples": 1,
        "averageScore": 6,
        "published": 1,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 1,
        "value": 0.5183333333333333,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "2ae9fd69127e82131f7ec675",
      "name": "Hacker News · small customer-support products",
      "url": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=customer%20support",
      "kind": "hn",
      "status": "probation",
      "addedAt": "2026-10-11T17:29:39.443Z",
      "howAdded": "discovery",
      "statusReason": "Narrow public launch search for support inboxes and bounded customer-service tools; title selection supplies leads, never proof of customers or autonomy.",
      "lastValidatedAt": "2026-10-11T17:29:39.443Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://hn.algolia.com",
            "robotsUrl": "https://hn.algolia.com/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-11T17:29:43.913Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=customer%20support",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=customer%20support",
        "fetchedAt": "2026-10-11T17:29:44.294Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:50.974Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.974Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.974Z"
      },
      "yield": {
        "scans": 380,
        "successfulScans": 380,
        "itemsFetched": 7600,
        "distinctItems": 20,
        "candidates": 6,
        "checkedCandidates": 1,
        "passedChecks": 1,
        "scoreSamples": 1,
        "averageScore": 6,
        "published": 1,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 2,
        "value": 0.4615151515151515,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "3718aeb8e8d67fe152a75278",
      "name": "Public tool requests · WPForms administration",
      "url": "https://wordpress.org/support/plugin/wpforms-lite/feed",
      "kind": "wordpress-request-demand",
      "status": "probation",
      "addedAt": "2026-10-19T09:19:14.510Z",
      "howAdded": "discovery",
      "statusReason": "Rotating untried public demand feed; a real guarded quota-counted probe is required before admission.",
      "lastValidatedAt": "2026-10-19T09:19:14.510Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://wordpress.org",
            "robotsUrl": "https://wordpress.org/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T09:19:18.994Z",
            "redirects": [],
            "state": "available",
            "bytes": 976,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://wordpress.org/support/plugin/wpforms-lite/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=UTF-8",
        "resolvedUrl": "https://wordpress.org/support/plugin/wpforms-lite/feed",
        "fetchedAt": "2026-10-19T09:19:20.163Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 6
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "professional_services"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://wordpress.org/about/terms/",
      "license": "Public support feed; short attributed task evidence only",
      "lastScannedAt": "2026-10-19T13:35:52.126Z",
      "health": {
        "status": "empty",
        "message": "The guarded readable demand feed has no eligible current nontechnical task records.",
        "fetchedAt": "2026-10-19T13:35:52.126Z"
      },
      "latestObservation": {
        "status": "empty",
        "message": "The guarded readable demand feed has no eligible current nontechnical task records.",
        "fetchedAt": "2026-10-19T13:35:52.126Z"
      },
      "yield": {
        "scans": 9,
        "successfulScans": 9,
        "itemsFetched": 6,
        "distinctItems": 6,
        "candidates": 0,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 3,
        "value": 0.3,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "94ff0c81c5bf3c749b6fb828",
      "name": "WordPress · public requests and feedback",
      "url": "https://wordpress.org/support/forum/requests-and-feedback/feed",
      "kind": "wordpress-discussion",
      "status": "probation",
      "addedAt": "2026-10-19T13:39:11.756Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T13:39:11.756Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://wordpress.org",
            "robotsUrl": "https://wordpress.org/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:20.551Z",
            "redirects": [],
            "state": "available",
            "bytes": 976,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://wordpress.org/support/forum/requests-and-feedback/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=UTF-8",
        "resolvedUrl": "https://wordpress.org/support/forum/requests-and-feedback/feed",
        "fetchedAt": "2026-10-19T13:39:21.211Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 1
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "local_services",
        "professional_services",
        "ecommerce",
        "education",
        "health_admin",
        "construction_property",
        "public_sector",
        "households",
        "ai_software_builders"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://wordpress.org/about/terms/",
      "license": "Short attributed public discussion excerpts; payment remains a hypothesis",
      "lastScannedAt": "2026-10-30T08:50:27.156Z",
      "health": {
        "status": "empty",
        "message": "The guarded readable demand feed has no eligible current nontechnical task records.",
        "fetchedAt": "2026-10-30T08:50:27.156Z"
      },
      "latestObservation": {
        "status": "empty",
        "message": "The guarded readable demand feed has no eligible current nontechnical task records.",
        "fetchedAt": "2026-10-30T08:50:27.156Z"
      },
      "yield": {
        "scans": 578,
        "successfulScans": 578,
        "itemsFetched": 6,
        "distinctItems": 1,
        "candidates": 0,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 4,
        "value": 0.3,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "a6747aa35096053cc2fc5f6d",
      "name": "Public tool requests · WooCommerce shipment tracking",
      "url": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
      "kind": "wordpress-request-demand",
      "status": "probation",
      "addedAt": "2026-10-19T09:19:14.510Z",
      "howAdded": "discovery",
      "statusReason": "Rotating untried public demand feed; a real guarded quota-counted probe is required before admission.",
      "lastValidatedAt": "2026-10-19T09:19:14.510Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://wordpress.org",
            "robotsUrl": "https://wordpress.org/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T09:19:18.994Z",
            "redirects": [],
            "state": "available",
            "bytes": 976,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=UTF-8",
        "resolvedUrl": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
        "fetchedAt": "2026-10-19T09:19:19.375Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 4
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "ecommerce"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://wordpress.org/about/terms/",
      "license": "Public support feed; short attributed task evidence only",
      "lastScannedAt": "2026-10-19T13:35:51.806Z",
      "health": {
        "status": "empty",
        "message": "The guarded readable demand feed has no eligible current nontechnical task records.",
        "fetchedAt": "2026-10-19T13:35:51.806Z"
      },
      "latestObservation": {
        "status": "empty",
        "message": "The guarded readable demand feed has no eligible current nontechnical task records.",
        "fetchedAt": "2026-10-19T13:35:51.806Z"
      },
      "yield": {
        "scans": 9,
        "successfulScans": 9,
        "itemsFetched": 4,
        "distinctItems": 4,
        "candidates": 0,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 5,
        "value": 0.3,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "5c64e7df38b6e81294e26f29",
      "name": "Activepieces · public discussions",
      "url": "https://community.activepieces.com/latest.rss",
      "kind": "discourse-discussion",
      "status": "probation",
      "addedAt": "2026-10-19T13:39:11.756Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T13:39:11.756Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://community.activepieces.com",
            "robotsUrl": "https://community.activepieces.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:17.942Z",
            "redirects": [],
            "state": "available",
            "bytes": 1001,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://community.activepieces.com/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://community.activepieces.com/latest.rss",
        "fetchedAt": "2026-10-19T13:39:18.271Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "local_services",
        "professional_services",
        "ecommerce",
        "education",
        "health_admin",
        "construction_property",
        "public_sector",
        "households",
        "ai_software_builders"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://community.activepieces.com/tos",
      "license": "Short attributed public discussion excerpts; payment remains a hypothesis",
      "lastScannedAt": "2026-10-30T08:50:27.522Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.522Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.522Z"
      },
      "yield": {
        "scans": 578,
        "successfulScans": 577,
        "itemsFetched": 900,
        "distinctItems": 2,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 6,
        "value": 0.2833333333333333,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": true
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "63dbb54258e730e95fa20298",
      "name": "Hugging Face · trending public Spaces",
      "url": "https://huggingface.co/api/spaces?sort=trendingScore&direction=-1&limit=20",
      "kind": "hf-spaces",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://huggingface.co",
            "robotsUrl": "https://huggingface.co/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-11T13:03:23.596Z",
            "redirects": [],
            "state": "available",
            "bytes": 68,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://huggingface.co/api/spaces?sort=trendingScore&direction=-1&limit=20",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json; charset=utf-8",
        "resolvedUrl": "https://huggingface.co/api/spaces?sort=trendingScore&direction=-1&limit=20",
        "fetchedAt": "2026-10-11T13:03:23.620Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.055Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.055Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.055Z"
      },
      "yield": {
        "scans": 392,
        "successfulScans": 391,
        "itemsFetched": 7820,
        "distinctItems": 40,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 7,
        "value": 0.2833333333333333,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "7efc2c70ed9424b76bd7407b",
      "name": "Apify · official platform",
      "url": "https://apify.com",
      "kind": "html",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://apify.com",
            "robotsUrl": "https://apify.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:21.893Z",
            "redirects": [],
            "state": "available",
            "bytes": 174,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://apify.com/",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html; charset=utf-8",
        "resolvedUrl": "https://apify.com/",
        "fetchedAt": "2026-10-11T13:03:22.000Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 1
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.118Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.118Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.118Z"
      },
      "yield": {
        "scans": 392,
        "successfulScans": 392,
        "itemsFetched": 392,
        "distinctItems": 1,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 8,
        "value": 0.2833333333333333,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "9786484d3d14e516ae5d6495",
      "name": "Metabase · public discussions",
      "url": "https://discourse.metabase.com/latest.rss",
      "kind": "discourse-discussion",
      "status": "probation",
      "addedAt": "2026-10-19T13:39:11.756Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T13:39:11.756Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://discourse.metabase.com",
            "robotsUrl": "https://discourse.metabase.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:18.553Z",
            "redirects": [],
            "state": "available",
            "bytes": 997,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://discourse.metabase.com/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://discourse.metabase.com/latest.rss",
        "fetchedAt": "2026-10-19T13:39:19.265Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "local_services",
        "professional_services",
        "ecommerce",
        "education",
        "health_admin",
        "construction_property",
        "public_sector",
        "households",
        "ai_software_builders"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://discourse.metabase.com/tos",
      "license": "Short attributed public discussion excerpts; payment remains a hypothesis",
      "lastScannedAt": "2026-10-30T08:50:27.620Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.620Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.620Z"
      },
      "yield": {
        "scans": 578,
        "successfulScans": 577,
        "itemsFetched": 67,
        "distinctItems": 1,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 9,
        "value": 0.2833333333333333,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": true
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "a654756600fbb68b9c75c45b",
      "name": "TechCrunch · AI",
      "url": "https://techcrunch.com/category/artificial-intelligence/feed",
      "kind": "rss",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://techcrunch.com",
            "robotsUrl": "https://techcrunch.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:21.518Z",
            "redirects": [],
            "state": "available",
            "bytes": 710,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://techcrunch.com/category/artificial-intelligence/feed",
            "reason": "No matching robots Disallow rule."
          },
          {
            "origin": "https://techcrunch.com",
            "robotsUrl": "https://techcrunch.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:21.518Z",
            "redirects": [],
            "state": "available",
            "bytes": 710,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://techcrunch.com/category/artificial-intelligence/feed/",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [
          {
            "url": "https://techcrunch.com/category/artificial-intelligence/feed",
            "status": 301,
            "next": "https://techcrunch.com/category/artificial-intelligence/feed/"
          }
        ],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=UTF-8",
        "resolvedUrl": "https://techcrunch.com/category/artificial-intelligence/feed/",
        "fetchedAt": "2026-10-11T13:03:21.553Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:50.637Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.637Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.637Z"
      },
      "yield": {
        "scans": 392,
        "successfulScans": 392,
        "itemsFetched": 7840,
        "distinctItems": 83,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 10,
        "value": 0.2833333333333333,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "d554ca3fc8b9fd3548600b86",
      "name": "Dify · official project",
      "url": "https://dify.ai",
      "kind": "html",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://dify.ai",
            "robotsUrl": "https://dify.ai/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-11T13:03:22.447Z",
            "redirects": [],
            "state": "available",
            "bytes": 67,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://dify.ai/",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html",
        "resolvedUrl": "https://dify.ai/",
        "fetchedAt": "2026-10-11T13:03:22.489Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 1
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.030Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.030Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.030Z"
      },
      "yield": {
        "scans": 392,
        "successfulScans": 392,
        "itemsFetched": 392,
        "distinctItems": 1,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 11,
        "value": 0.2833333333333333,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "ef244017b1460269fc687cea",
      "name": "Browser Use · official project",
      "url": "https://browser-use.com",
      "kind": "html",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://browser-use.com",
            "robotsUrl": "https://browser-use.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:22.187Z",
            "redirects": [],
            "state": "available",
            "bytes": 1043,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://browser-use.com/",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html; charset=utf-8",
        "resolvedUrl": "https://browser-use.com/",
        "fetchedAt": "2026-10-11T13:03:22.238Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 1
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:50.981Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.981Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.981Z"
      },
      "yield": {
        "scans": 392,
        "successfulScans": 392,
        "itemsFetched": 392,
        "distinctItems": 1,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 12,
        "value": 0.2833333333333333,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "470ff63db8da1802b0ccc779",
      "name": "Hugging Face · invoice workflow demos",
      "url": "https://huggingface.co/api/spaces?search=invoice&sort=lastModified&direction=-1&limit=20",
      "kind": "hf-spaces",
      "status": "probation",
      "addedAt": "2026-10-11T21:32:59.965Z",
      "howAdded": "discovery",
      "statusReason": "Public invoice extraction, validation and viewing demos as bounded workflow leads; listing alone proves no runtime, buyers, revenue or autonomy.",
      "lastValidatedAt": "2026-10-11T21:32:59.965Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://huggingface.co",
            "robotsUrl": "https://huggingface.co/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-11T21:33:01.329Z",
            "redirects": [],
            "state": "available",
            "bytes": 68,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://huggingface.co/api/spaces?search=invoice&sort=lastModified&direction=-1&limit=20",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json; charset=utf-8",
        "resolvedUrl": "https://huggingface.co/api/spaces?search=invoice&sort=lastModified&direction=-1&limit=20",
        "fetchedAt": "2026-10-11T21:33:01.477Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.065Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.065Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.065Z"
      },
      "yield": {
        "scans": 370,
        "successfulScans": 369,
        "itemsFetched": 7380,
        "distinctItems": 25,
        "candidates": 2,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 13,
        "value": 0.2714285714285714,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "3733c65b9abe07b4b87156f9",
      "name": "Simon Willison · public AI notes",
      "url": "https://simonwillison.net/atom/everything",
      "kind": "rss",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://simonwillison.net",
            "robotsUrl": "https://simonwillison.net/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-11T13:03:25.938Z",
            "redirects": [],
            "state": "available",
            "bytes": 136,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://simonwillison.net/atom/everything",
            "reason": "No matching robots Disallow rule."
          },
          {
            "origin": "https://simonwillison.net",
            "robotsUrl": "https://simonwillison.net/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-11T13:03:25.938Z",
            "redirects": [],
            "state": "available",
            "bytes": 136,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://simonwillison.net/atom/everything/",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [
          {
            "url": "https://simonwillison.net/atom/everything",
            "status": 301,
            "next": "https://simonwillison.net/atom/everything/"
          }
        ],
        "httpStatus": 200,
        "contentType": "application/xml; charset=utf-8",
        "resolvedUrl": "https://simonwillison.net/atom/everything/",
        "fetchedAt": "2026-10-11T13:03:25.976Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.262Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.262Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.262Z"
      },
      "yield": {
        "scans": 388,
        "successfulScans": 388,
        "itemsFetched": 7760,
        "distinctItems": 39,
        "candidates": 6,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 14,
        "value": 0.24545454545454548,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "96fe006ed5f7b38bfc889c7d",
      "name": "Ben’s Bites · public newsletter",
      "url": "https://www.bensbites.com/feed",
      "kind": "rss",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://www.bensbites.com",
            "robotsUrl": "https://www.bensbites.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:26.294Z",
            "redirects": [],
            "state": "available",
            "bytes": 595,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://www.bensbites.com/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/xml; charset=utf-8",
        "resolvedUrl": "https://www.bensbites.com/feed",
        "fetchedAt": "2026-10-11T13:03:26.320Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.183Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.183Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.183Z"
      },
      "yield": {
        "scans": 388,
        "successfulScans": 388,
        "itemsFetched": 7760,
        "distinctItems": 22,
        "candidates": 6,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 15,
        "value": 0.24545454545454548,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "a5689419c24836e7e0ce37dd",
      "name": "Latent Space · public newsletter",
      "url": "https://www.latent.space/feed",
      "kind": "rss",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://www.latent.space",
            "robotsUrl": "https://www.latent.space/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:26.073Z",
            "redirects": [],
            "state": "available",
            "bytes": 593,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://www.latent.space/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/xml; charset=utf-8",
        "resolvedUrl": "https://www.latent.space/feed",
        "fetchedAt": "2026-10-11T13:03:26.112Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.236Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.236Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.236Z"
      },
      "yield": {
        "scans": 388,
        "successfulScans": 388,
        "itemsFetched": 7760,
        "distinctItems": 27,
        "candidates": 7,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 16,
        "value": 0.2416666666666667,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "11df15447c6c0e0dfdc06be3",
      "name": "Hacker News · document products",
      "url": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=document",
      "kind": "hn",
      "status": "probation",
      "addedAt": "2026-10-11T21:32:59.965Z",
      "howAdded": "discovery",
      "statusReason": "Narrow public launch search for document extraction and processing products; their capabilities require separate primary evidence.",
      "lastValidatedAt": "2026-10-11T21:32:59.965Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://hn.algolia.com",
            "robotsUrl": "https://hn.algolia.com/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-11T21:33:00.564Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=document",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=document",
        "fetchedAt": "2026-10-11T21:33:00.901Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.495Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.495Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.495Z"
      },
      "yield": {
        "scans": 366,
        "successfulScans": 366,
        "itemsFetched": 7320,
        "distinctItems": 25,
        "candidates": 8,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 17,
        "value": 0.23846153846153845,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "d7d95a60e6009c5d18b5920e",
      "name": "WooCommerce · public merchant tool requests",
      "url": "https://wordpress.org/support/plugin/woocommerce/feed",
      "kind": "woocommerce-demand",
      "status": "probation",
      "addedAt": "2026-10-19T08:42:43.549Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T08:42:43.549Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://wordpress.org",
            "robotsUrl": "https://wordpress.org/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T08:42:47.854Z",
            "redirects": [],
            "state": "available",
            "bytes": 976,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://wordpress.org/support/plugin/woocommerce/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=UTF-8",
        "resolvedUrl": "https://wordpress.org/support/plugin/woocommerce/feed",
        "fetchedAt": "2026-10-19T08:42:56.061Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "ecommerce"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://wordpress.org/about/terms/",
      "license": "Public support feed; short attributed task evidence only",
      "lastScannedAt": "2026-10-19T13:35:51.684Z",
      "health": {
        "status": "empty",
        "message": "The guarded readable demand feed has no eligible current nontechnical task records.",
        "fetchedAt": "2026-10-19T13:35:51.684Z"
      },
      "latestObservation": {
        "status": "empty",
        "message": "The guarded readable demand feed has no eligible current nontechnical task records.",
        "fetchedAt": "2026-10-19T13:35:51.684Z"
      },
      "yield": {
        "scans": 10,
        "successfulScans": 10,
        "itemsFetched": 40,
        "distinctItems": 20,
        "candidates": 8,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 18,
        "value": 0.23846153846153845,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "ec389fe35523e6dbba11e744",
      "name": "Hacker News · Launch HN",
      "url": "https://news.ycombinator.com/launches",
      "kind": "hn-launches",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://news.ycombinator.com",
            "robotsUrl": "https://news.ycombinator.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:25.131Z",
            "redirects": [],
            "state": "available",
            "bytes": 243,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://news.ycombinator.com/launches",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html; charset=utf-8",
        "resolvedUrl": "https://news.ycombinator.com/launches",
        "fetchedAt": "2026-10-11T13:03:25.352Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:35:51.659Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.659Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.659Z"
      },
      "yield": {
        "scans": 388,
        "successfulScans": 285,
        "itemsFetched": 5700,
        "distinctItems": 22,
        "candidates": 8,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 19,
        "value": 0.23846153846153845,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "b681f434d554a69a059ccf85",
      "name": "n8n · invoice processing templates",
      "url": "https://n8n.io/workflows/categories/invoice-processing",
      "kind": "n8n-workflows",
      "status": "probation",
      "addedAt": "2026-10-11T17:29:39.443Z",
      "howAdded": "discovery",
      "statusReason": "Public server-rendered invoice-processing workflow examples; each detail page must be independently fetched, and actual demand remains a hypothesis.",
      "lastValidatedAt": "2026-10-11T17:29:39.443Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://n8n.io",
            "robotsUrl": "https://n8n.io/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T17:29:39.791Z",
            "redirects": [],
            "state": "available",
            "bytes": 76,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://n8n.io/workflows/categories/invoice-processing",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html;charset=utf-8",
        "resolvedUrl": "https://n8n.io/workflows/categories/invoice-processing",
        "fetchedAt": "2026-10-11T17:29:43.706Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 10
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:19:17.237Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:17.237Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:17.237Z"
      },
      "yield": {
        "scans": 376,
        "successfulScans": 375,
        "itemsFetched": 3750,
        "distinctItems": 10,
        "candidates": 9,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 20,
        "value": 0.2357142857142857,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "fb41898e3878114109088fed",
      "name": "GitHub · daily trending repositories",
      "url": "https://github.com/trending",
      "kind": "github-trending",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://github.com",
            "robotsUrl": "https://github.com/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-11T13:03:22.669Z",
            "redirects": [],
            "state": "available",
            "bytes": 16739,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "baidu",
              "*"
            ],
            "evaluatedUrl": "https://github.com/trending",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html; charset=utf-8",
        "resolvedUrl": "https://github.com/trending",
        "fetchedAt": "2026-10-11T13:03:23.518Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 8
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T00:38:29.944Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T00:38:29.944Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T00:38:29.944Z"
      },
      "yield": {
        "scans": 208,
        "successfulScans": 208,
        "itemsFetched": 2175,
        "distinctItems": 37,
        "candidates": 11,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 21,
        "value": 0.23125,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "31fb2b3a59fe1a234dfff556",
      "name": "Shopify · public discussions",
      "url": "https://community.shopify.com/latest.rss",
      "kind": "discourse-discussion",
      "status": "probation",
      "addedAt": "2026-10-19T13:39:11.756Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T13:39:11.756Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://community.shopify.com",
            "robotsUrl": "https://community.shopify.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:17.359Z",
            "redirects": [],
            "state": "available",
            "bytes": 972,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://community.shopify.com/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://community.shopify.com/latest.rss",
        "fetchedAt": "2026-10-19T13:39:17.797Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "local_services",
        "professional_services",
        "ecommerce",
        "education",
        "health_admin",
        "construction_property",
        "public_sector",
        "households",
        "ai_software_builders"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://community.shopify.com/tos",
      "license": "Short attributed public discussion excerpts; payment remains a hypothesis",
      "lastScannedAt": "2026-10-30T08:50:26.673Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:26.673Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:26.673Z"
      },
      "yield": {
        "scans": 578,
        "successfulScans": 557,
        "itemsFetched": 1695,
        "distinctItems": 40,
        "candidates": 13,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 22,
        "value": 0.2277777777777778,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": true
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "9cda068854be7266ca517af9",
      "name": "Make · public discussions",
      "url": "https://community.make.com/latest.rss",
      "kind": "discourse-discussion",
      "status": "probation",
      "addedAt": "2026-10-19T13:39:11.756Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T13:39:11.756Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://community.make.com",
            "robotsUrl": "https://community.make.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:16.076Z",
            "redirects": [],
            "state": "available",
            "bytes": 999,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://community.make.com/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://community.make.com/latest.rss",
        "fetchedAt": "2026-10-19T13:39:17.040Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "local_services",
        "professional_services",
        "ecommerce",
        "education",
        "health_admin",
        "construction_property",
        "public_sector",
        "households",
        "ai_software_builders"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://community.make.com/tos",
      "license": "Short attributed public discussion excerpts; payment remains a hypothesis",
      "lastScannedAt": "2026-10-30T08:50:27.095Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.095Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.095Z"
      },
      "yield": {
        "scans": 578,
        "successfulScans": 578,
        "itemsFetched": 3098,
        "distinctItems": 19,
        "candidates": 13,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 23,
        "value": 0.2277777777777778,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "fc96810c8981082bcd1a293c",
      "name": "Hacker News · Show HN",
      "url": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40&query=AI",
      "kind": "hn",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://hn.algolia.com",
            "robotsUrl": "https://hn.algolia.com/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:20.493Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40&query=AI",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40&query=AI",
        "fetchedAt": "2026-10-11T13:03:20.763Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T08:21:57.558Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T08:21:57.558Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T08:21:57.558Z"
      },
      "yield": {
        "scans": 183,
        "successfulScans": 183,
        "itemsFetched": 3660,
        "distinctItems": 236,
        "candidates": 13,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 24,
        "value": 0.2277777777777778,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "939a755c20e133b519039302",
      "name": "Hacker News · Ask HN discussions",
      "url": "https://hn.algolia.com/api/v1/search_by_date?tags=ask_hn&hitsPerPage=40",
      "kind": "hn-discussion",
      "status": "probation",
      "addedAt": "2026-10-19T13:39:11.756Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T13:39:11.756Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://hn.algolia.com",
            "robotsUrl": "https://hn.algolia.com/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:13.400Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=ask_hn&hitsPerPage=40",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=ask_hn&hitsPerPage=40",
        "fetchedAt": "2026-10-19T13:39:13.798Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "local_services",
        "professional_services",
        "ecommerce",
        "education",
        "health_admin",
        "construction_property",
        "public_sector",
        "households",
        "ai_software_builders"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://news.ycombinator.com/newsguidelines.html",
      "license": "Short attributed public discussion excerpts; payment remains a hypothesis",
      "lastScannedAt": "2026-10-30T08:50:27.612Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.612Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.612Z"
      },
      "yield": {
        "scans": 578,
        "successfulScans": 578,
        "itemsFetched": 1694,
        "distinctItems": 44,
        "candidates": 14,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 25,
        "value": 0.2263157894736842,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "498a696b45de80618b28713d",
      "name": "BetaList · new products",
      "url": "https://betalist.com",
      "kind": "betalist",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://betalist.com",
            "robotsUrl": "https://betalist.com/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-11T13:03:24.277Z",
            "redirects": [],
            "state": "available",
            "bytes": 99,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://betalist.com/",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html; charset=utf-8",
        "resolvedUrl": "https://betalist.com/",
        "fetchedAt": "2026-10-11T13:03:24.552Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T08:21:57.655Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T08:21:57.655Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T08:21:57.655Z"
      },
      "yield": {
        "scans": 183,
        "successfulScans": 183,
        "itemsFetched": 3660,
        "distinctItems": 165,
        "candidates": 15,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 26,
        "value": 0.22500000000000003,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "54649964a0a05f1bfa2b2d36",
      "name": "Hacker News · automation",
      "url": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=30&query=automation",
      "kind": "hn",
      "status": "probation",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://hn.algolia.com",
            "robotsUrl": "https://hn.algolia.com/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-11T13:03:20.493Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=30&query=automation",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=30&query=automation",
        "fetchedAt": "2026-10-11T13:03:21.098Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T08:38:43.440Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T08:38:43.440Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T08:38:43.440Z"
      },
      "yield": {
        "scans": 183,
        "successfulScans": 183,
        "itemsFetched": 3660,
        "distinctItems": 55,
        "candidates": 28,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 27,
        "value": 0.21515151515151515,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "e935ee0506560f4175ecd570",
      "name": "n8n · public discussions",
      "url": "https://community.n8n.io/latest.rss",
      "kind": "discourse-discussion",
      "status": "probation",
      "addedAt": "2026-10-19T13:39:11.756Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T13:39:11.756Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://community.n8n.io",
            "robotsUrl": "https://community.n8n.io/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:14.637Z",
            "redirects": [],
            "state": "available",
            "bytes": 997,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://community.n8n.io/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://community.n8n.io/latest.rss",
        "fetchedAt": "2026-10-19T13:39:15.534Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 19
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "local_services",
        "professional_services",
        "ecommerce",
        "education",
        "health_admin",
        "construction_property",
        "public_sector",
        "households",
        "ai_software_builders"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://community.n8n.io/tos",
      "license": "Short attributed public discussion excerpts; payment remains a hypothesis",
      "lastScannedAt": "2026-10-30T08:50:27.810Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.810Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:27.810Z"
      },
      "yield": {
        "scans": 578,
        "successfulScans": 575,
        "itemsFetched": 3086,
        "distinctItems": 72,
        "candidates": 40,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 28,
        "value": 0.21111111111111114,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": true
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "529fe252f6662aa1472475a1",
      "name": "n8n · document extraction templates",
      "url": "https://n8n.io/workflows/categories/document-extraction",
      "kind": "n8n-workflows",
      "status": "probation",
      "addedAt": "2026-10-11T17:29:39.443Z",
      "howAdded": "discovery",
      "statusReason": "Public server-rendered workflow cards with exact template URLs and descriptions; user-contributed documentation supplies leads, never proof of deployed businesses or revenue.",
      "lastValidatedAt": "2026-10-11T17:29:39.443Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://n8n.io",
            "robotsUrl": "https://n8n.io/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-11T17:29:39.791Z",
            "redirects": [],
            "state": "available",
            "bytes": 76,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://n8n.io/workflows/categories/document-extraction",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html;charset=utf-8",
        "resolvedUrl": "https://n8n.io/workflows/categories/document-extraction",
        "fetchedAt": "2026-10-11T17:29:42.124Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 10
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T13:19:17.101Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:17.101Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:17.101Z"
      },
      "yield": {
        "scans": 189,
        "successfulScans": 186,
        "itemsFetched": 1860,
        "distinctItems": 11,
        "candidates": 7,
        "checkedCandidates": 1,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 29,
        "value": 0.20833333333333334,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "9357203ec00a097f7f2cdfaa",
      "name": "Hacker News · Show HN discussions",
      "url": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40",
      "kind": "hn-discussion",
      "status": "probation",
      "addedAt": "2026-10-19T13:39:11.756Z",
      "howAdded": "seed",
      "statusReason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "lastValidatedAt": "2026-10-19T13:39:11.756Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://hn.algolia.com",
            "robotsUrl": "https://hn.algolia.com/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:13.400Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40",
        "fetchedAt": "2026-10-19T13:39:14.124Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "local_services",
        "professional_services",
        "ecommerce",
        "education",
        "health_admin",
        "construction_property",
        "public_sector",
        "households",
        "ai_software_builders"
      ],
      "demandKind": "community_request",
      "termsUrl": "https://news.ycombinator.com/showhn.html",
      "license": "Short attributed public discussion excerpts; payment remains a hypothesis",
      "lastScannedAt": "2026-10-30T08:50:26.724Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:26.724Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-30T08:50:26.724Z"
      },
      "yield": {
        "scans": 578,
        "successfulScans": 578,
        "itemsFetched": 2684,
        "distinctItems": 317,
        "candidates": 59,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": 30,
        "value": 0.2078125,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": true
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "086772a8008f7255f645d435",
      "name": "EU TED · English business-service tenders",
      "url": "https://api.ted.europa.eu/v3/notices/search",
      "kind": "ted-service-demand",
      "status": "retired",
      "addedAt": "2026-10-19T08:42:43.549Z",
      "howAdded": "seed",
      "statusReason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "lastValidatedAt": "2026-10-19T08:42:43.549Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://api.ted.europa.eu",
            "robotsUrl": "https://api.ted.europa.eu/robots.txt",
            "status": 404,
            "contentType": "application/json",
            "fetchedAt": "2026-10-19T08:42:44.714Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://api.ted.europa.eu/v3/notices/search",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://api.ted.europa.eu/v3/notices/search",
        "fetchedAt": "2026-10-19T08:42:45.734Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 10
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "public_sector"
      ],
      "demandKind": "public_tender",
      "termsUrl": "https://docs.ted.europa.eu/api/latest/search.html",
      "license": "EU public procurement reuse",
      "lastScannedAt": "2026-10-19T13:35:52.545Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:52.545Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:52.545Z"
      },
      "yield": {
        "scans": 10,
        "successfulScans": 10,
        "itemsFetched": 110,
        "distinctItems": 11,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "57b6f5f4945019c919f6d35c",
      "name": "We Work Remotely · customer support requests",
      "url": "https://weworkremotely.com/categories/remote-customer-support-jobs.rss",
      "kind": "wwr-demand",
      "status": "retired",
      "addedAt": "2026-10-19T08:42:43.549Z",
      "howAdded": "seed",
      "statusReason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "lastValidatedAt": "2026-10-19T08:42:43.549Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://weworkremotely.com",
            "robotsUrl": "https://weworkremotely.com/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-19T08:42:46.227Z",
            "redirects": [],
            "state": "available",
            "bytes": 297,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://weworkremotely.com/categories/remote-customer-support-jobs.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://weworkremotely.com/categories/remote-customer-support-jobs.rss",
        "fetchedAt": "2026-10-19T08:42:46.553Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "professional_services"
      ],
      "demandKind": "paid_job",
      "termsUrl": "https://weworkremotely.com/remote-job-rss-feed",
      "license": "Public RSS with source attribution",
      "lastScannedAt": "2026-10-19T13:35:51.907Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.907Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.907Z"
      },
      "yield": {
        "scans": 10,
        "successfulScans": 10,
        "itemsFetched": 176,
        "distinctItems": 20,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "5c7690cd1ac3e604f884cfc2",
      "name": "We Work Remotely · sales and marketing requests",
      "url": "https://weworkremotely.com/categories/remote-sales-and-marketing-jobs.rss",
      "kind": "wwr-demand",
      "status": "retired",
      "addedAt": "2026-10-19T08:42:43.549Z",
      "howAdded": "seed",
      "statusReason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "lastValidatedAt": "2026-10-19T08:42:43.549Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://weworkremotely.com",
            "robotsUrl": "https://weworkremotely.com/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-19T08:42:46.227Z",
            "redirects": [],
            "state": "available",
            "bytes": 297,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://weworkremotely.com/categories/remote-sales-and-marketing-jobs.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://weworkremotely.com/categories/remote-sales-and-marketing-jobs.rss",
        "fetchedAt": "2026-10-19T08:42:47.469Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "professional_services"
      ],
      "demandKind": "paid_job",
      "termsUrl": "https://weworkremotely.com/remote-job-rss-feed",
      "license": "Public RSS with source attribution",
      "lastScannedAt": "2026-10-19T13:35:50.861Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.861Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:50.861Z"
      },
      "yield": {
        "scans": 10,
        "successfulScans": 10,
        "itemsFetched": 192,
        "distinctItems": 20,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "bf36022f0a8cd761c338ce53",
      "name": "We Work Remotely · finance and administration requests",
      "url": "https://weworkremotely.com/categories/remote-management-and-finance-jobs.rss",
      "kind": "wwr-demand",
      "status": "retired",
      "addedAt": "2026-10-19T08:42:43.549Z",
      "howAdded": "seed",
      "statusReason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "lastValidatedAt": "2026-10-19T08:42:43.549Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://weworkremotely.com",
            "robotsUrl": "https://weworkremotely.com/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-19T08:42:46.227Z",
            "redirects": [],
            "state": "available",
            "bytes": 297,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://weworkremotely.com/categories/remote-management-and-finance-jobs.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://weworkremotely.com/categories/remote-management-and-finance-jobs.rss",
        "fetchedAt": "2026-10-19T08:42:46.890Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 14
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "professional_services"
      ],
      "demandKind": "paid_job",
      "termsUrl": "https://weworkremotely.com/remote-job-rss-feed",
      "license": "Public RSS with source attribution",
      "lastScannedAt": "2026-10-19T13:35:51.961Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.961Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:35:51.961Z"
      },
      "yield": {
        "scans": 10,
        "successfulScans": 10,
        "itemsFetched": 140,
        "distinctItems": 14,
        "candidates": 1,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "d7da742b595e7ec512a8ef54",
      "name": "Find a Tender · public service tenders",
      "url": "https://www.find-tender.service.gov.uk/api/1.0/ocdsReleasePackages?stages=tender&limit=20",
      "kind": "uk-tenders-demand",
      "status": "retired",
      "addedAt": "2026-10-12T11:44:14.776Z",
      "howAdded": "seed",
      "statusReason": "Retired after ten consecutive guarded public-access failures.",
      "lastValidatedAt": "2026-10-12T11:44:14.776Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://www.find-tender.service.gov.uk",
            "robotsUrl": "https://www.find-tender.service.gov.uk/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-12T11:44:25.771Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://www.find-tender.service.gov.uk/api/1.0/ocdsReleasePackages?stages=tender&limit=20",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://www.find-tender.service.gov.uk/api/1.0/ocdsReleasePackages?stages=tender&limit=20",
        "fetchedAt": "2026-10-12T11:44:28.782Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 3
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "public_sector"
      ],
      "demandKind": "public_tender",
      "termsUrl": "https://www.contractsfinder.service.gov.uk/Home/TermsAndConditions",
      "license": "Open Government Licence",
      "lastScannedAt": "2026-10-14T21:35:23.458Z",
      "health": {
        "status": "failed",
        "message": "No current paid nontechnical demand items passed the privacy-safe adapter.",
        "fetchedAt": "2026-10-14T21:35:23.458Z"
      },
      "latestObservation": {
        "status": "failed",
        "message": "No current paid nontechnical demand items passed the privacy-safe adapter.",
        "fetchedAt": "2026-10-14T21:35:23.458Z"
      },
      "yield": {
        "scans": 71,
        "successfulScans": 52,
        "itemsFetched": 128,
        "distinctItems": 3,
        "candidates": 3,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "cca981f46ee3fb8981413fee",
      "name": "Contracts Finder · public service tenders",
      "url": "https://www.contractsfinder.service.gov.uk/Published/Notices/OCDS/Search?stages=tender&limit=20",
      "kind": "uk-contracts-demand",
      "status": "retired",
      "addedAt": "2026-10-12T11:44:14.776Z",
      "howAdded": "seed",
      "statusReason": "Retired after ten consecutive guarded public-access failures.",
      "lastValidatedAt": "2026-10-12T11:44:14.776Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://www.contractsfinder.service.gov.uk",
            "robotsUrl": "https://www.contractsfinder.service.gov.uk/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-12T11:44:15.565Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://www.contractsfinder.service.gov.uk/Published/Notices/OCDS/Search?stages=tender&limit=20",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://www.contractsfinder.service.gov.uk/Published/Notices/OCDS/Search?stages=tender&limit=20",
        "fetchedAt": "2026-10-12T11:44:25.090Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 8
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "public_sector"
      ],
      "demandKind": "public_tender",
      "termsUrl": "https://www.contractsfinder.service.gov.uk/Home/TermsAndConditions",
      "license": "Open Government Licence",
      "lastScannedAt": "2026-10-14T21:35:30.744Z",
      "health": {
        "status": "failed",
        "message": "No current paid nontechnical demand items passed the privacy-safe adapter.",
        "fetchedAt": "2026-10-14T21:35:30.744Z"
      },
      "latestObservation": {
        "status": "failed",
        "message": "No current paid nontechnical demand items passed the privacy-safe adapter.",
        "fetchedAt": "2026-10-14T21:35:30.744Z"
      },
      "yield": {
        "scans": 64,
        "successfulScans": 54,
        "itemsFetched": 262,
        "distinctItems": 8,
        "candidates": 8,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "8ef335213e70b38904e7a504",
      "name": "JobSearch · paid medical secretary roles",
      "url": "https://jobsearch.api.jobtechdev.se/search?q=medicinsk%20sekreterare&limit=20",
      "kind": "jobtech-demand",
      "status": "retired",
      "addedAt": "2026-10-12T11:44:14.776Z",
      "howAdded": "seed",
      "statusReason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "lastValidatedAt": "2026-10-12T11:44:14.776Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://jobsearch.api.jobtechdev.se",
            "robotsUrl": "https://jobsearch.api.jobtechdev.se/robots.txt",
            "status": 404,
            "contentType": "application/json; charset=UTF-8",
            "fetchedAt": "2026-10-12T11:44:30.000Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://jobsearch.api.jobtechdev.se/search?q=medicinsk%20sekreterare&limit=20",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://jobsearch.api.jobtechdev.se/search?q=medicinsk%20sekreterare&limit=20",
        "fetchedAt": "2026-10-12T11:44:33.553Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "health_admin"
      ],
      "demandKind": "paid_job",
      "termsUrl": "https://data.arbetsformedlingen.se/dataservice/jobsearch/",
      "license": "CC0",
      "lastScannedAt": "2026-10-19T13:19:15.659Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:15.659Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:15.659Z"
      },
      "yield": {
        "scans": 189,
        "successfulScans": 189,
        "itemsFetched": 3780,
        "distinctItems": 28,
        "candidates": 10,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "af031577e7a7287449e227af",
      "name": "YC · AI company directory",
      "url": "https://www.ycombinator.com/companies/industry/artificial-intelligence",
      "kind": "yc-directory",
      "status": "retired",
      "addedAt": "2026-10-11T13:03:20.265Z",
      "howAdded": "seed",
      "statusReason": "Retired after ten consecutive guarded public-access failures.",
      "lastValidatedAt": "2026-10-11T13:03:20.265Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://www.ycombinator.com",
            "robotsUrl": "https://www.ycombinator.com/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-11T13:03:24.047Z",
            "redirects": [],
            "state": "available",
            "bytes": 283,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://www.ycombinator.com/companies/industry/artificial-intelligence",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "text/html; charset=utf-8",
        "resolvedUrl": "https://www.ycombinator.com/companies/industry/artificial-intelligence",
        "fetchedAt": "2026-10-11T13:03:25.875Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "building",
      "segments": [],
      "demandKind": null,
      "lastScannedAt": "2026-10-19T08:38:43.154Z",
      "health": {
        "status": "failed",
        "message": "Source parser found no readable public item records.",
        "fetchedAt": "2026-10-19T08:38:43.154Z"
      },
      "latestObservation": {
        "status": "failed",
        "message": "Source parser found no readable public item records.",
        "fetchedAt": "2026-10-19T08:38:43.154Z"
      },
      "yield": {
        "scans": 192,
        "successfulScans": 172,
        "itemsFetched": 3440,
        "distinctItems": 255,
        "candidates": 13,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "b36040a453674772f62166cb",
      "name": "JobSearch · paid school administration roles",
      "url": "https://jobsearch.api.jobtechdev.se/search?q=skoladministrat%C3%B6r&limit=20",
      "kind": "jobtech-demand",
      "status": "retired",
      "addedAt": "2026-10-12T11:44:14.776Z",
      "howAdded": "seed",
      "statusReason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "lastValidatedAt": "2026-10-12T11:44:14.776Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://jobsearch.api.jobtechdev.se",
            "robotsUrl": "https://jobsearch.api.jobtechdev.se/robots.txt",
            "status": 404,
            "contentType": "application/json; charset=UTF-8",
            "fetchedAt": "2026-10-12T11:44:30.000Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://jobsearch.api.jobtechdev.se/search?q=skoladministrat%C3%B6r&limit=20",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://jobsearch.api.jobtechdev.se/search?q=skoladministrat%C3%B6r&limit=20",
        "fetchedAt": "2026-10-12T11:44:34.276Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 13
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "education"
      ],
      "demandKind": "paid_job",
      "termsUrl": "https://data.arbetsformedlingen.se/dataservice/jobsearch/",
      "license": "CC0",
      "lastScannedAt": "2026-10-19T13:19:15.490Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:15.490Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:15.490Z"
      },
      "yield": {
        "scans": 186,
        "successfulScans": 186,
        "itemsFetched": 2733,
        "distinctItems": 21,
        "candidates": 14,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    },
    {
      "id": "3c18d6f9afb86838768b18fe",
      "name": "JobSearch · paid administration roles",
      "url": "https://jobsearch.api.jobtechdev.se/search?q=administrat%C3%B6r&limit=20",
      "kind": "jobtech-demand",
      "status": "retired",
      "addedAt": "2026-10-12T11:44:14.776Z",
      "howAdded": "seed",
      "statusReason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "lastValidatedAt": "2026-10-12T11:44:14.776Z",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://jobsearch.api.jobtechdev.se",
            "robotsUrl": "https://jobsearch.api.jobtechdev.se/robots.txt",
            "status": 404,
            "contentType": "application/json; charset=UTF-8",
            "fetchedAt": "2026-10-12T11:44:30.000Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://jobsearch.api.jobtechdev.se/search?q=administrat%C3%B6r&limit=20",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://jobsearch.api.jobtechdev.se/search?q=administrat%C3%B6r&limit=20",
        "fetchedAt": "2026-10-12T11:44:31.758Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v1",
        "itemCount": 20
      },
      "metadataVersion": 1,
      "role": "demand",
      "segments": [
        "professional_services"
      ],
      "demandKind": "paid_job",
      "termsUrl": "https://data.arbetsformedlingen.se/dataservice/jobsearch/",
      "license": "CC0",
      "lastScannedAt": "2026-10-19T13:19:15.480Z",
      "health": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:15.480Z"
      },
      "latestObservation": {
        "status": "ok",
        "message": "Public HTTPS, robots access and bounded item parser passed.",
        "fetchedAt": "2026-10-19T13:19:15.480Z"
      },
      "yield": {
        "scans": 187,
        "successfulScans": 187,
        "itemsFetched": 3606,
        "distinctItems": 37,
        "candidates": 26,
        "checkedCandidates": 0,
        "passedChecks": 0,
        "scoreSamples": 0,
        "averageScore": null,
        "published": 0,
        "linkedInPicks": 0
      },
      "rank": {
        "position": null,
        "value": null,
        "basis": "Verified check pass rate, publication and LinkedIn yield, supported mean score; smoothed for small samples.",
        "exploration": false
      },
      "historicalAttribution": "unknown"
    }
  ],
  "recentChanges": [
    {
      "schema": 1,
      "id": "source-change-f7e558c11774f3fb0d34add2",
      "type": "source-change",
      "sourceId": "af031577e7a7287449e227af",
      "name": "YC · AI company directory",
      "url": "https://www.ycombinator.com/companies/industry/artificial-intelligence",
      "fromStatus": "probation",
      "toStatus": "retired",
      "reason": "Retired after ten consecutive guarded public-access failures.",
      "createdAt": "2026-10-19T21:34:33.738Z",
      "runId": "research-39328470116-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39328470116",
      "beforeSha256": "1939a831aed514858622dfd0f6fa0c9b1b7771ced090c433d5ae883ce73fa4bb",
      "afterSha256": "ec35e1f4ee6d4603c8af7c1b6f63536e3883fdebcffdf91c07b670cfebd3a8a4",
      "validation": null,
      "statistics": {
        "yield": {
          "scans": 192,
          "successfulScans": 172,
          "itemsFetched": 3440,
          "distinctItems": 255,
          "candidates": 13,
          "checkedCandidates": 0,
          "passedChecks": 0,
          "scoreSamples": 0,
          "averageScore": null,
          "published": 0,
          "linkedInPicks": 0
        },
        "lastScannedAt": "2026-10-19T08:38:43.154Z",
        "health": {
          "status": "failed",
          "message": "Source parser found no readable public item records.",
          "fetchedAt": "2026-10-19T08:38:43.154Z"
        },
        "consecutiveAccessFailures": 20
      }
    },
    {
      "schema": 1,
      "id": "source-change-0d962fab8f8be2d7adf892cd",
      "type": "source-change",
      "sourceId": "bf36022f0a8cd761c338ce53",
      "name": "We Work Remotely · finance and administration requests",
      "url": "https://weworkremotely.com/categories/remote-management-and-finance-jobs.rss",
      "fromStatus": "probation",
      "toStatus": "retired",
      "reason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "eb649b4a4f56a86c1ac76bbfffb2c0777937c01e7be33276317b652cc309f862",
      "afterSha256": "1d5b53fffe09a983652b4a63614b729c5eb5246b6f2665cde3e06ac8a842a98c",
      "validation": null,
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-1739479bc403a2904f9ab1b7",
      "type": "source-change",
      "sourceId": "9357203ec00a097f7f2cdfaa",
      "name": "Hacker News · Show HN discussions",
      "url": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "597eb9e164f35f1049e68777660f8532804c4ad4665b83c8d99015851f70e338",
      "afterSha256": "f6a9265d52e9ec1bc30e3082b8fb8a33d58b7d4cb91f0804d1f4994c41112d27",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://hn.algolia.com",
            "robotsUrl": "https://hn.algolia.com/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:13.400Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=40",
        "fetchedAt": "2026-10-19T13:39:14.124Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-1917cbe435616b3bc66d9753",
      "type": "source-change",
      "sourceId": "3c18d6f9afb86838768b18fe",
      "name": "JobSearch · paid administration roles",
      "url": "https://jobsearch.api.jobtechdev.se/search?q=administrat%C3%B6r&limit=20",
      "fromStatus": "probation",
      "toStatus": "retired",
      "reason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "e328fcc85ebff81d4e348dfc836636bd85518d2bacee6ef31e3b4d6e94ad239a",
      "afterSha256": "1084b90baed0daf00543d46a2d57964fc5c604f08993826f2d82bfe46d9495c9",
      "validation": null,
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-24d185a7654dc5d3a35f15c8",
      "type": "source-change",
      "sourceId": "94ff0c81c5bf3c749b6fb828",
      "name": "WordPress · public requests and feedback",
      "url": "https://wordpress.org/support/forum/requests-and-feedback/feed",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "d93631e6e98ed43ee53a8c5ca2897b1dcd71e1b55eb0435e25dc8d9a3b74e2f4",
      "afterSha256": "1939a831aed514858622dfd0f6fa0c9b1b7771ced090c433d5ae883ce73fa4bb",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://wordpress.org",
            "robotsUrl": "https://wordpress.org/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:20.551Z",
            "redirects": [],
            "state": "available",
            "bytes": 976,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://wordpress.org/support/forum/requests-and-feedback/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=UTF-8",
        "resolvedUrl": "https://wordpress.org/support/forum/requests-and-feedback/feed",
        "fetchedAt": "2026-10-19T13:39:21.211Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 1
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-4523d86b20de76616a85e62e",
      "type": "source-change",
      "sourceId": "5c64e7df38b6e81294e26f29",
      "name": "Activepieces · public discussions",
      "url": "https://community.activepieces.com/latest.rss",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "8fe79bf4980ab3e3626b9535afc3e0f6c1e814cd3cf4c0fa6978f88386abc20e",
      "afterSha256": "5bf941f768886be6d4e1de0425ee077221e43c9a0613f0a6e410cfccaaa63193",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://community.activepieces.com",
            "robotsUrl": "https://community.activepieces.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:17.942Z",
            "redirects": [],
            "state": "available",
            "bytes": 1001,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://community.activepieces.com/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://community.activepieces.com/latest.rss",
        "fetchedAt": "2026-10-19T13:39:18.271Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-52cd0d18557a75040043b9ed",
      "type": "source-change",
      "sourceId": "57b6f5f4945019c919f6d35c",
      "name": "We Work Remotely · customer support requests",
      "url": "https://weworkremotely.com/categories/remote-customer-support-jobs.rss",
      "fromStatus": "probation",
      "toStatus": "retired",
      "reason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "84dc2e734fc042c990851e7d1934b5112bc8d86b4066ca6581869a5828065126",
      "afterSha256": "eb649b4a4f56a86c1ac76bbfffb2c0777937c01e7be33276317b652cc309f862",
      "validation": null,
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-52d2f1c390b7ca061797b2fe",
      "type": "source-change",
      "sourceId": "e935ee0506560f4175ecd570",
      "name": "n8n · public discussions",
      "url": "https://community.n8n.io/latest.rss",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "f6a9265d52e9ec1bc30e3082b8fb8a33d58b7d4cb91f0804d1f4994c41112d27",
      "afterSha256": "e786df68c3e7a8514f117eb2ae9774cef6e7427d2ca91d426069cd038882c6cb",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://community.n8n.io",
            "robotsUrl": "https://community.n8n.io/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:14.637Z",
            "redirects": [],
            "state": "available",
            "bytes": 997,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://community.n8n.io/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://community.n8n.io/latest.rss",
        "fetchedAt": "2026-10-19T13:39:15.534Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 19
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-5995a30e5a3d0e36b0fceb9f",
      "type": "source-change",
      "sourceId": "b36040a453674772f62166cb",
      "name": "JobSearch · paid school administration roles",
      "url": "https://jobsearch.api.jobtechdev.se/search?q=skoladministrat%C3%B6r&limit=20",
      "fromStatus": "probation",
      "toStatus": "retired",
      "reason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "41354b53811323c41dabe7b73a50873e44fcad8bd50b7881358eb8ae90621f0a",
      "afterSha256": "8a2805b42055ddb6bdef159970a4efd2495879fcde1a849e12bc250895557819",
      "validation": null,
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-621740365672abfbc0780cc8",
      "type": "source-change",
      "sourceId": "9786484d3d14e516ae5d6495",
      "name": "Metabase · public discussions",
      "url": "https://discourse.metabase.com/latest.rss",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "5bf941f768886be6d4e1de0425ee077221e43c9a0613f0a6e410cfccaaa63193",
      "afterSha256": "299a5628a1f11044fd6db87b83220a856b2e7422caf89fbdfe2984d1e9e37db7",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://discourse.metabase.com",
            "robotsUrl": "https://discourse.metabase.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:18.553Z",
            "redirects": [],
            "state": "available",
            "bytes": 997,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://discourse.metabase.com/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://discourse.metabase.com/latest.rss",
        "fetchedAt": "2026-10-19T13:39:19.265Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-74e3aa8323ad47d9a45da92f",
      "type": "source-change",
      "sourceId": "8ef335213e70b38904e7a504",
      "name": "JobSearch · paid medical secretary roles",
      "url": "https://jobsearch.api.jobtechdev.se/search?q=medicinsk%20sekreterare&limit=20",
      "fromStatus": "probation",
      "toStatus": "retired",
      "reason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "1084b90baed0daf00543d46a2d57964fc5c604f08993826f2d82bfe46d9495c9",
      "afterSha256": "41354b53811323c41dabe7b73a50873e44fcad8bd50b7881358eb8ae90621f0a",
      "validation": null,
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-959d1a64bfecc61898c20230",
      "type": "source-change",
      "sourceId": "086772a8008f7255f645d435",
      "name": "EU TED · English business-service tenders",
      "url": "https://api.ted.europa.eu/v3/notices/search",
      "fromStatus": "probation",
      "toStatus": "retired",
      "reason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "8a2805b42055ddb6bdef159970a4efd2495879fcde1a849e12bc250895557819",
      "afterSha256": "84dc2e734fc042c990851e7d1934b5112bc8d86b4066ca6581869a5828065126",
      "validation": null,
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-9797844d0ce91d3dcdae89fe",
      "type": "source-change",
      "sourceId": "939a755c20e133b519039302",
      "name": "Hacker News · Ask HN discussions",
      "url": "https://hn.algolia.com/api/v1/search_by_date?tags=ask_hn&hitsPerPage=40",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "8ae7fd1d2176bb58eb55a3ff49e649904e9bc0b94ae327632e3ca714e6ba56bf",
      "afterSha256": "597eb9e164f35f1049e68777660f8532804c4ad4665b83c8d99015851f70e338",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://hn.algolia.com",
            "robotsUrl": "https://hn.algolia.com/robots.txt",
            "status": 404,
            "contentType": "text/html; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:13.400Z",
            "redirects": [],
            "state": "missing",
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [],
            "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=ask_hn&hitsPerPage=40",
            "reason": "robots.txt is missing (404/410); project policy permits access."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/json",
        "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=ask_hn&hitsPerPage=40",
        "fetchedAt": "2026-10-19T13:39:13.798Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-9eb9230bb192c5fa245af9bd",
      "type": "source-change",
      "sourceId": "31fb2b3a59fe1a234dfff556",
      "name": "Shopify · public discussions",
      "url": "https://community.shopify.com/latest.rss",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "1109f9d2c5350bc8f9e19264923521765515cd65223a59781700444b109bb4c8",
      "afterSha256": "8fe79bf4980ab3e3626b9535afc3e0f6c1e814cd3cf4c0fa6978f88386abc20e",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://community.shopify.com",
            "robotsUrl": "https://community.shopify.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:17.359Z",
            "redirects": [],
            "state": "available",
            "bytes": 972,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://community.shopify.com/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://community.shopify.com/latest.rss",
        "fetchedAt": "2026-10-19T13:39:17.797Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-ca8d314e06d40f307a134598",
      "type": "source-change",
      "sourceId": "5c7690cd1ac3e604f884cfc2",
      "name": "We Work Remotely · sales and marketing requests",
      "url": "https://weworkremotely.com/categories/remote-sales-and-marketing-jobs.rss",
      "fromStatus": "probation",
      "toStatus": "retired",
      "reason": "Dan changed new research to public business discussions only; job advertisements and tenders are retired while all historical evidence is preserved.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "1d5b53fffe09a983652b4a63614b729c5eb5246b6f2665cde3e06ac8a842a98c",
      "afterSha256": "8ae7fd1d2176bb58eb55a3ff49e649904e9bc0b94ae327632e3ca714e6ba56bf",
      "validation": null,
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-d2b486e44b3d5cf04032135c",
      "type": "source-change",
      "sourceId": "9cda068854be7266ca517af9",
      "name": "Make · public discussions",
      "url": "https://community.make.com/latest.rss",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T13:39:11.756Z",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "beforeSha256": "e786df68c3e7a8514f117eb2ae9774cef6e7427d2ca91d426069cd038882c6cb",
      "afterSha256": "1109f9d2c5350bc8f9e19264923521765515cd65223a59781700444b109bb4c8",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://community.make.com",
            "robotsUrl": "https://community.make.com/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T13:39:16.076Z",
            "redirects": [],
            "state": "available",
            "bytes": 999,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://community.make.com/latest.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://community.make.com/latest.rss",
        "fetchedAt": "2026-10-19T13:39:17.040Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-187de887c5cbde6b57bce5e1",
      "type": "source-change",
      "sourceId": "a6747aa35096053cc2fc5f6d",
      "name": "Public tool requests · WooCommerce shipment tracking",
      "url": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Rotating untried public demand feed; a real guarded quota-counted probe is required before admission.",
      "createdAt": "2026-10-19T09:19:14.510Z",
      "runId": "research-39229021160-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39229021160",
      "beforeSha256": "8303300a8cb6c6fd0e6443a216b20ef8fd4ef58a0df0c698c9fc347931771015",
      "afterSha256": "c243bba15466c1abea864f6a77c27d3f36ebe09fbb3250c8f598c9402e868cfd",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://wordpress.org",
            "robotsUrl": "https://wordpress.org/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T09:19:18.994Z",
            "redirects": [],
            "state": "available",
            "bytes": 976,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=UTF-8",
        "resolvedUrl": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
        "fetchedAt": "2026-10-19T09:19:19.375Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 4
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-3f997a27e336ec7a2497305c",
      "type": "source-change",
      "sourceId": "3718aeb8e8d67fe152a75278",
      "name": "Public tool requests · WPForms administration",
      "url": "https://wordpress.org/support/plugin/wpforms-lite/feed",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Rotating untried public demand feed; a real guarded quota-counted probe is required before admission.",
      "createdAt": "2026-10-19T09:19:14.510Z",
      "runId": "research-39229021160-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39229021160",
      "beforeSha256": "c243bba15466c1abea864f6a77c27d3f36ebe09fbb3250c8f598c9402e868cfd",
      "afterSha256": "f7e45174ea310562a49fb1b079c58885bfba6bd76fc42f81c04f95f9b0f78ed4",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://wordpress.org",
            "robotsUrl": "https://wordpress.org/robots.txt",
            "status": 200,
            "contentType": "text/plain; charset=utf-8",
            "fetchedAt": "2026-10-19T09:19:18.994Z",
            "redirects": [],
            "state": "available",
            "bytes": 976,
            "truncated": false,
            "allowed": true,
            "matchedRule": null,
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://wordpress.org/support/plugin/wpforms-lite/feed",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=UTF-8",
        "resolvedUrl": "https://wordpress.org/support/plugin/wpforms-lite/feed",
        "fetchedAt": "2026-10-19T09:19:20.163Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 6
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-7c46e1e7be2ffd47914e47c7",
      "type": "source-change",
      "sourceId": "57b6f5f4945019c919f6d35c",
      "name": "We Work Remotely · customer support requests",
      "url": "https://weworkremotely.com/categories/remote-customer-support-jobs.rss",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T08:42:43.549Z",
      "runId": "source-bootstrap-39224687372-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39224687372",
      "beforeSha256": "277ed5a3d6fd18c51ac378c4d31306b99fb3cf24cc77f5e8646b829eacf3339d",
      "afterSha256": "8469f1473de121a4a27cfb6714113ad71e33fad8b2444964986e4745ce63b6c3",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://weworkremotely.com",
            "robotsUrl": "https://weworkremotely.com/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-19T08:42:46.227Z",
            "redirects": [],
            "state": "available",
            "bytes": 297,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://weworkremotely.com/categories/remote-customer-support-jobs.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://weworkremotely.com/categories/remote-customer-support-jobs.rss",
        "fetchedAt": "2026-10-19T08:42:46.553Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "statistics": null
    },
    {
      "schema": 1,
      "id": "source-change-8d4664e6affb9d77a993e019",
      "type": "source-change",
      "sourceId": "5c7690cd1ac3e604f884cfc2",
      "name": "We Work Remotely · sales and marketing requests",
      "url": "https://weworkremotely.com/categories/remote-sales-and-marketing-jobs.rss",
      "fromStatus": null,
      "toStatus": "probation",
      "reason": "Guarded hosted seed validation admitted a readable public source on probation.",
      "createdAt": "2026-10-19T08:42:43.549Z",
      "runId": "source-bootstrap-39224687372-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39224687372",
      "beforeSha256": "74e23cf48843929cf825e5fa4d21d4f8f1a6b497471d2b50581cd651c3a488c2",
      "afterSha256": "8cc4d8d2201e6efe94d72b586ba0cfa989aa7db9cd6db7caae98555407e3332b",
      "validation": {
        "publicHttps": true,
        "robots": [
          {
            "origin": "https://weworkremotely.com",
            "robotsUrl": "https://weworkremotely.com/robots.txt",
            "status": 200,
            "contentType": "text/plain",
            "fetchedAt": "2026-10-19T08:42:46.227Z",
            "redirects": [],
            "state": "available",
            "bytes": 297,
            "truncated": false,
            "allowed": true,
            "matchedRule": {
              "type": "allow",
              "path": "/",
              "specificity": 1
            },
            "selectedUserAgents": [
              "*"
            ],
            "evaluatedUrl": "https://weworkremotely.com/categories/remote-sales-and-marketing-jobs.rss",
            "reason": "No matching robots Disallow rule."
          }
        ],
        "robotsAllowed": true,
        "redirects": [],
        "httpStatus": 200,
        "contentType": "application/rss+xml; charset=utf-8",
        "resolvedUrl": "https://weworkremotely.com/categories/remote-sales-and-marketing-jobs.rss",
        "fetchedAt": "2026-10-19T08:42:47.469Z",
        "maxBytes": 2000000,
        "truncated": false,
        "readable": true,
        "parserVersion": "public-sources-v2",
        "itemCount": 20
      },
      "statistics": null
    }
  ],
  "exclusions": [
    {
      "schema": 1,
      "id": "source-exclusion-ad8a6f65c8e2dbcc9ce5e1a8",
      "sourceId": "414b771cc5ba604e287450f9",
      "name": "Reddit · r/SideProject",
      "url": "https://www.reddit.com/r/SideProject/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-208d9fa9ad5c653bbebd1aea",
      "sourceId": "d3ccc7035ca7e86a961a6efb",
      "name": "Reddit · r/Entrepreneur",
      "url": "https://www.reddit.com/r/Entrepreneur/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-040f0b25d2c46d223492bf8b",
      "sourceId": "1f3001f90b996f25c0f7f6eb",
      "name": "Reddit · r/n8n",
      "url": "https://www.reddit.com/r/n8n/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-6cb715f0f7c4e2a6c01b83ef",
      "sourceId": "50f9aa9fc25a65ee8d4c39c8",
      "name": "Reddit · r/AI_Agents",
      "url": "https://www.reddit.com/r/AI_Agents/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-f4ea72a2bfba136443bbec81",
      "sourceId": "7210e36e4fc8aa402e667258",
      "name": "Product Hunt",
      "url": "https://www.producthunt.com/feed",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "robots.txt returned HTTP 403; access is refused.",
      "code": "robots_unavailable",
      "robotsState": "unavailable",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-2314d1901205704de9dbd0f2",
      "sourceId": "6548833164b0e7c9a8a95a1c",
      "name": "Indie Hackers",
      "url": "https://www.indiehackers.com",
      "kind": "html",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Public source returned HTTP 403.",
      "code": "source_http_error",
      "robotsState": "checked",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-15ed4f224715b55ce6c7b753",
      "sourceId": "795ce58c950927d649c2b0fd",
      "name": "Reddit · r/SaaS",
      "url": "https://www.reddit.com/r/SaaS/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-fd243ded891d903b7c093f7e",
      "sourceId": "d400659aa9e988cf46a84ed1",
      "name": "Reddit · r/microsaas",
      "url": "https://www.reddit.com/r/microsaas/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-ca56f2f3ad013eaea0641475",
      "sourceId": "53d3ebbe4bec4947f3015b4d",
      "name": "Reddit · r/indiehackers",
      "url": "https://www.reddit.com/r/indiehackers/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-53e05a6367fb03420f09aa3b",
      "sourceId": "bca67aafb9ccef57e0efe661",
      "name": "Reddit · r/automation",
      "url": "https://www.reddit.com/r/automation/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-2a2b0bd4b121b033a6e534b0",
      "sourceId": "814fa4dfd354e29e5b652e5e",
      "name": "Reddit · r/LocalLLaMA",
      "url": "https://www.reddit.com/r/LocalLLaMA/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-283390b11f8a55d6aa040239",
      "sourceId": "21cd2de3ce81bf6748699052",
      "name": "Reddit · r/ChatGPTCoding",
      "url": "https://www.reddit.com/r/ChatGPTCoding/new/.rss?limit=20",
      "kind": "rss",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Robots rules refuse this public source.",
      "code": "robots_disallowed",
      "robotsState": "disallowed",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-27eee814fd9b9a5707b685a8",
      "sourceId": "b112419a8f8994c297d53db5",
      "name": "YC · Launches",
      "url": "https://www.ycombinator.com/launches",
      "kind": "yc-launches",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Source parser found no readable public item records.",
      "code": "no_public_items",
      "robotsState": "checked",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-8f4c62d45025841df2eb84bd",
      "sourceId": "06397222628c66030221f6b5",
      "name": "Microlaunch · new products",
      "url": "https://microlaunch.net",
      "kind": "unparsed-listing",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Public source exceeded the complete 2000000-byte response limit.",
      "code": "body_oversized",
      "robotsState": "checked",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-622ffe644f3efa5f0ff0a30e",
      "sourceId": "56f01c128325474c314cae76",
      "name": "There's An AI For That",
      "url": "https://theresanaiforthat.com",
      "kind": "html",
      "checkedAt": "2026-10-11T13:03:20.265Z",
      "reason": "Public source returned HTTP 403.",
      "code": "source_http_error",
      "robotsState": "checked",
      "runId": "source-bootstrap-38141643627-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38141643627",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-5d5705e27fac06d6c5fffe2b",
      "sourceId": "bb953deee734d849242590a8",
      "name": "Public tool requests · Bookly appointment administration",
      "url": "https://wordpress.org/support/plugin/bookly-responsive-appointment-booking-tool/feed",
      "kind": "wordpress-request-demand",
      "checkedAt": "2026-10-19T09:19:14.510Z",
      "reason": "No current concrete privacy-safe task requests passed the public demand adapter.",
      "code": "invalid_demand_source",
      "robotsState": "checked",
      "runId": "research-39229021160-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39229021160",
      "proposedBy": "discovery"
    },
    {
      "schema": 1,
      "id": "source-exclusion-aac919a4552a4682a89201f8",
      "sourceId": "8f122c54f668793b6dce1dda",
      "name": "Software Recommendations · public questions",
      "url": "https://softwarerecs.stackexchange.com/feeds",
      "kind": "stackexchange-discussion",
      "checkedAt": "2026-10-19T13:39:11.756Z",
      "reason": "robots.txt returned HTTP 418; access is refused.",
      "code": "robots_unavailable",
      "robotsState": "unavailable",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-f29adbdc4f1efa7882fc69ab",
      "sourceId": "e02e18812811e284517adc69",
      "name": "Software Recommendations · official public API",
      "url": "https://api.stackexchange.com/2.3/questions?site=softwarerecs&sort=creation&order=desc&filter=withbody&pagesize=20",
      "kind": "stackexchange-discussion",
      "checkedAt": "2026-10-19T13:39:11.756Z",
      "reason": "robots.txt returned HTTP 400; access is refused.",
      "code": "robots_unavailable",
      "robotsState": "unavailable",
      "runId": "source-bootstrap-39261948603-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39261948603",
      "proposedBy": "seed"
    },
    {
      "schema": 1,
      "id": "source-exclusion-b73f3c727e99b95dc061758f",
      "sourceId": "8f122c54f668793b6dce1dda",
      "name": "Software Recommendations · public questions",
      "url": "https://softwarerecs.stackexchange.com/feeds",
      "kind": "stackexchange-discussion",
      "checkedAt": "2026-10-26T13:54:50.359Z",
      "reason": "robots.txt returned HTTP 418; access is refused.",
      "code": "robots_unavailable",
      "robotsState": "unavailable",
      "runId": "research-40334676974-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/40334676974",
      "proposedBy": "discovery"
    },
    {
      "schema": 1,
      "id": "source-exclusion-de1737849e8e7df801699296",
      "sourceId": "e02e18812811e284517adc69",
      "name": "Software Recommendations · official public API",
      "url": "https://api.stackexchange.com/2.3/questions?site=softwarerecs&sort=creation&order=desc&filter=withbody&pagesize=20",
      "kind": "stackexchange-discussion",
      "checkedAt": "2026-10-26T13:54:50.359Z",
      "reason": "robots.txt returned HTTP 400; access is refused.",
      "code": "robots_unavailable",
      "robotsState": "unavailable",
      "runId": "research-40334676974-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/40334676974",
      "proposedBy": "discovery"
    }
  ],
  "lastEvolutionAt": "2026-10-29T22:36:21.306Z",
  "lastDiscoveryAt": "2026-10-26T13:54:50.359Z",
  "discoveryBudget": {
    "day": "2026-10-30",
    "used": 0,
    "remaining": 3
  },
  "recentDiscoveries": [
    {
      "schema": 1,
      "id": "source-discovery-2026-10-26-2",
      "type": "source-discovery",
      "day": "2026-10-26",
      "probeNumber": 2,
      "runId": "research-40334676974-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/40334676974",
      "createdAt": "2026-10-26T13:54:50.359Z",
      "evolutionId": "source-evolution-2026-10-26",
      "evolutionSha256": "0faf17183778528fa55b8bd56385a930110d96d37d92462c464b5b25ea58012a",
      "previousSha256": "784bb4ce1b7b17fac9a44b20e052be8c9ecfbb74660866b5a5f6643b3b557154",
      "quotaBefore": 2,
      "quotaAfter": 1,
      "statisticsSha256": "062b5b156c9e37a2f3686707a3cc92acff647a28b30e12835ac6d703e828ed0b",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "e02e18812811e284517adc69",
        "url": "https://api.stackexchange.com/2.3/questions?site=softwarerecs&sort=creation&order=desc&filter=withbody&pagesize=20",
        "checkedAt": "2026-10-26T13:54:50.359Z",
        "eligible": false,
        "reason": "robots.txt returned HTTP 400; access is refused.",
        "validation": {
          "origin": "https://api.stackexchange.com",
          "robotsUrl": "https://api.stackexchange.com/robots.txt",
          "status": 400,
          "contentType": "application/json; charset=utf-8",
          "fetchedAt": "2026-10-26T13:54:56.238Z",
          "redirects": [],
          "allowed": false,
          "state": "unreachable",
          "parserVersion": "public-sources-v2",
          "itemCount": 0
        },
        "code": "robots_unavailable"
      },
      "changeId": null,
      "exclusionId": "source-exclusion-de1737849e8e7df801699296"
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-26-1",
      "type": "source-discovery",
      "day": "2026-10-26",
      "probeNumber": 1,
      "runId": "research-40334676974-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/40334676974",
      "createdAt": "2026-10-26T13:54:50.359Z",
      "evolutionId": "source-evolution-2026-10-26",
      "evolutionSha256": "0faf17183778528fa55b8bd56385a930110d96d37d92462c464b5b25ea58012a",
      "previousSha256": null,
      "quotaBefore": 3,
      "quotaAfter": 2,
      "statisticsSha256": "062b5b156c9e37a2f3686707a3cc92acff647a28b30e12835ac6d703e828ed0b",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "8f122c54f668793b6dce1dda",
        "url": "https://softwarerecs.stackexchange.com/feeds",
        "checkedAt": "2026-10-26T13:54:50.359Z",
        "eligible": false,
        "reason": "robots.txt returned HTTP 418; access is refused.",
        "validation": {
          "origin": "https://softwarerecs.stackexchange.com",
          "robotsUrl": "https://softwarerecs.stackexchange.com/robots.txt",
          "status": 418,
          "contentType": "text/plain",
          "fetchedAt": "2026-10-26T13:54:55.698Z",
          "redirects": [],
          "allowed": false,
          "state": "unreachable",
          "parserVersion": "public-sources-v2",
          "itemCount": 0
        },
        "code": "robots_unavailable"
      },
      "changeId": null,
      "exclusionId": "source-exclusion-b73f3c727e99b95dc061758f"
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-19-3",
      "type": "source-discovery",
      "day": "2026-10-19",
      "probeNumber": 3,
      "runId": "research-39229021160-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39229021160",
      "createdAt": "2026-10-19T09:19:14.510Z",
      "evolutionId": "source-evolution-2026-10-19",
      "evolutionSha256": "7bff0a898207da6e144dd50b38f663762e3b87ee2ca81ad361fe67ec6a5dac2e",
      "previousSha256": "a55fa1d557659e5412baeef9f226c2fc62ce5ff6dee50a531c365b1b32b91e23",
      "quotaBefore": 1,
      "quotaAfter": 0,
      "statisticsSha256": "d3bef394833788646697522a9b319d1e4f5a8668aa52d0a9f96d0d29be5d9b36",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "bb953deee734d849242590a8",
        "url": "https://wordpress.org/support/plugin/bookly-responsive-appointment-booking-tool/feed",
        "checkedAt": "2026-10-19T09:19:14.510Z",
        "eligible": false,
        "reason": "No current concrete privacy-safe task requests passed the public demand adapter.",
        "validation": {
          "publicHttps": true,
          "robots": [
            {
              "origin": "https://wordpress.org",
              "robotsUrl": "https://wordpress.org/robots.txt",
              "status": 200,
              "contentType": "text/plain; charset=utf-8",
              "fetchedAt": "2026-10-19T09:19:18.994Z",
              "redirects": [],
              "state": "available",
              "bytes": 976,
              "truncated": false,
              "allowed": true,
              "matchedRule": null,
              "selectedUserAgents": [
                "*"
              ],
              "evaluatedUrl": "https://wordpress.org/support/plugin/bookly-responsive-appointment-booking-tool/feed",
              "reason": "No matching robots Disallow rule."
            }
          ],
          "robotsAllowed": true,
          "redirects": [],
          "httpStatus": 200,
          "contentType": "application/rss+xml; charset=UTF-8",
          "resolvedUrl": "https://wordpress.org/support/plugin/bookly-responsive-appointment-booking-tool/feed",
          "fetchedAt": "2026-10-19T09:19:20.553Z",
          "maxBytes": 2000000,
          "truncated": false,
          "readable": false,
          "parserVersion": "public-sources-v2",
          "itemCount": 0
        },
        "code": "invalid_demand_source"
      },
      "changeId": null,
      "exclusionId": "source-exclusion-5d5705e27fac06d6c5fffe2b"
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-19-2",
      "type": "source-discovery",
      "day": "2026-10-19",
      "probeNumber": 2,
      "runId": "research-39229021160-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39229021160",
      "createdAt": "2026-10-19T09:19:14.510Z",
      "evolutionId": "source-evolution-2026-10-19",
      "evolutionSha256": "7bff0a898207da6e144dd50b38f663762e3b87ee2ca81ad361fe67ec6a5dac2e",
      "previousSha256": "17d373f2a9df634f553da19016e5b6d39130f7fa303497f1dcbab799a337ed64",
      "quotaBefore": 2,
      "quotaAfter": 1,
      "statisticsSha256": "d3bef394833788646697522a9b319d1e4f5a8668aa52d0a9f96d0d29be5d9b36",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "3718aeb8e8d67fe152a75278",
        "url": "https://wordpress.org/support/plugin/wpforms-lite/feed",
        "checkedAt": "2026-10-19T09:19:14.510Z",
        "eligible": true,
        "reason": "Public HTTPS, robots access and bounded item parser passed.",
        "validation": {
          "publicHttps": true,
          "robots": [
            {
              "origin": "https://wordpress.org",
              "robotsUrl": "https://wordpress.org/robots.txt",
              "status": 200,
              "contentType": "text/plain; charset=utf-8",
              "fetchedAt": "2026-10-19T09:19:18.994Z",
              "redirects": [],
              "state": "available",
              "bytes": 976,
              "truncated": false,
              "allowed": true,
              "matchedRule": null,
              "selectedUserAgents": [
                "*"
              ],
              "evaluatedUrl": "https://wordpress.org/support/plugin/wpforms-lite/feed",
              "reason": "No matching robots Disallow rule."
            }
          ],
          "robotsAllowed": true,
          "redirects": [],
          "httpStatus": 200,
          "contentType": "application/rss+xml; charset=UTF-8",
          "resolvedUrl": "https://wordpress.org/support/plugin/wpforms-lite/feed",
          "fetchedAt": "2026-10-19T09:19:20.163Z",
          "maxBytes": 2000000,
          "truncated": false,
          "readable": true,
          "parserVersion": "public-sources-v2",
          "itemCount": 6
        },
        "code": null
      },
      "changeId": "source-change-3f997a27e336ec7a2497305c",
      "exclusionId": null
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-19-1",
      "type": "source-discovery",
      "day": "2026-10-19",
      "probeNumber": 1,
      "runId": "research-39229021160-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/39229021160",
      "createdAt": "2026-10-19T09:19:14.510Z",
      "evolutionId": "source-evolution-2026-10-19",
      "evolutionSha256": "7bff0a898207da6e144dd50b38f663762e3b87ee2ca81ad361fe67ec6a5dac2e",
      "previousSha256": null,
      "quotaBefore": 3,
      "quotaAfter": 2,
      "statisticsSha256": "d3bef394833788646697522a9b319d1e4f5a8668aa52d0a9f96d0d29be5d9b36",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "a6747aa35096053cc2fc5f6d",
        "url": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
        "checkedAt": "2026-10-19T09:19:14.510Z",
        "eligible": true,
        "reason": "Public HTTPS, robots access and bounded item parser passed.",
        "validation": {
          "publicHttps": true,
          "robots": [
            {
              "origin": "https://wordpress.org",
              "robotsUrl": "https://wordpress.org/robots.txt",
              "status": 200,
              "contentType": "text/plain; charset=utf-8",
              "fetchedAt": "2026-10-19T09:19:18.994Z",
              "redirects": [],
              "state": "available",
              "bytes": 976,
              "truncated": false,
              "allowed": true,
              "matchedRule": null,
              "selectedUserAgents": [
                "*"
              ],
              "evaluatedUrl": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
              "reason": "No matching robots Disallow rule."
            }
          ],
          "robotsAllowed": true,
          "redirects": [],
          "httpStatus": 200,
          "contentType": "application/rss+xml; charset=UTF-8",
          "resolvedUrl": "https://wordpress.org/support/plugin/woo-advanced-shipment-tracking/feed",
          "fetchedAt": "2026-10-19T09:19:19.375Z",
          "maxBytes": 2000000,
          "truncated": false,
          "readable": true,
          "parserVersion": "public-sources-v2",
          "itemCount": 4
        },
        "code": null
      },
      "changeId": "source-change-187de887c5cbde6b57bce5e1",
      "exclusionId": null
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-12-2",
      "type": "source-discovery",
      "day": "2026-10-12",
      "probeNumber": 2,
      "runId": "research-38176779702-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38176779702",
      "createdAt": "2026-10-11T21:32:59.965Z",
      "evolutionId": "source-evolution-2026-10-12",
      "evolutionSha256": "302555fb8aa5169774beece8d526497aaec73467210010a95317fc2c5c1654fb",
      "previousSha256": "1ae50108990e358c6f5a0245190aec5ad8b1f248dc55a742c44c2c6871f6c434",
      "quotaBefore": 2,
      "quotaAfter": 1,
      "statisticsSha256": "a245cdfcc61b5c25ca8d992696fc2ba3d589561a4049c64b9bbf8128695e8b43",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "470ff63db8da1802b0ccc779",
        "url": "https://huggingface.co/api/spaces?search=invoice&sort=lastModified&direction=-1&limit=20",
        "checkedAt": "2026-10-11T21:32:59.965Z",
        "eligible": true,
        "reason": "Public HTTPS, robots access and bounded item parser passed.",
        "validation": {
          "publicHttps": true,
          "robots": [
            {
              "origin": "https://huggingface.co",
              "robotsUrl": "https://huggingface.co/robots.txt",
              "status": 200,
              "contentType": "text/plain",
              "fetchedAt": "2026-10-11T21:33:01.329Z",
              "redirects": [],
              "state": "available",
              "bytes": 68,
              "truncated": false,
              "allowed": true,
              "matchedRule": {
                "type": "allow",
                "path": "/",
                "specificity": 1
              },
              "selectedUserAgents": [
                "*"
              ],
              "evaluatedUrl": "https://huggingface.co/api/spaces?search=invoice&sort=lastModified&direction=-1&limit=20",
              "reason": "No matching robots Disallow rule."
            }
          ],
          "robotsAllowed": true,
          "redirects": [],
          "httpStatus": 200,
          "contentType": "application/json; charset=utf-8",
          "resolvedUrl": "https://huggingface.co/api/spaces?search=invoice&sort=lastModified&direction=-1&limit=20",
          "fetchedAt": "2026-10-11T21:33:01.477Z",
          "maxBytes": 2000000,
          "truncated": false,
          "readable": true,
          "parserVersion": "public-sources-v1",
          "itemCount": 20
        },
        "code": null
      },
      "changeId": "source-change-87060196ad2525fd57a6373f",
      "exclusionId": null
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-12-1",
      "type": "source-discovery",
      "day": "2026-10-12",
      "probeNumber": 1,
      "runId": "research-38176779702-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38176779702",
      "createdAt": "2026-10-11T21:32:59.965Z",
      "evolutionId": "source-evolution-2026-10-12",
      "evolutionSha256": "302555fb8aa5169774beece8d526497aaec73467210010a95317fc2c5c1654fb",
      "previousSha256": null,
      "quotaBefore": 3,
      "quotaAfter": 2,
      "statisticsSha256": "a245cdfcc61b5c25ca8d992696fc2ba3d589561a4049c64b9bbf8128695e8b43",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "11df15447c6c0e0dfdc06be3",
        "url": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=document",
        "checkedAt": "2026-10-11T21:32:59.965Z",
        "eligible": true,
        "reason": "Public HTTPS, robots access and bounded item parser passed.",
        "validation": {
          "publicHttps": true,
          "robots": [
            {
              "origin": "https://hn.algolia.com",
              "robotsUrl": "https://hn.algolia.com/robots.txt",
              "status": 404,
              "contentType": "text/html; charset=utf-8",
              "fetchedAt": "2026-10-11T21:33:00.564Z",
              "redirects": [],
              "state": "missing",
              "allowed": true,
              "matchedRule": null,
              "selectedUserAgents": [],
              "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=document",
              "reason": "robots.txt is missing (404/410); project policy permits access."
            }
          ],
          "robotsAllowed": true,
          "redirects": [],
          "httpStatus": 200,
          "contentType": "application/json",
          "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=document",
          "fetchedAt": "2026-10-11T21:33:00.901Z",
          "maxBytes": 2000000,
          "truncated": false,
          "readable": true,
          "parserVersion": "public-sources-v1",
          "itemCount": 20
        },
        "code": null
      },
      "changeId": "source-change-78cfcf00dc1835caffc32a55",
      "exclusionId": null
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-11-3",
      "type": "source-discovery",
      "day": "2026-10-11",
      "probeNumber": 3,
      "runId": "research-38159830319-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38159830319",
      "createdAt": "2026-10-11T17:29:39.443Z",
      "evolutionId": "source-evolution-2026-10-11",
      "evolutionSha256": "1b710fe05f8d2e529f4a36bd82297b5aec9d868837291a9a0e1c908bd319f4c6",
      "previousSha256": "b43d9fde20895576c1593fd87d618421a17a9d3586f17aa378b68e1bef7f55a6",
      "quotaBefore": 1,
      "quotaAfter": 0,
      "statisticsSha256": "aa21ab2bc59267c93bc788783eb25116ba2e9b79d187d7fc29c691d98776fe2e",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "2ae9fd69127e82131f7ec675",
        "url": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=customer%20support",
        "checkedAt": "2026-10-11T17:29:39.443Z",
        "eligible": true,
        "reason": "Public HTTPS, robots access and bounded item parser passed.",
        "validation": {
          "publicHttps": true,
          "robots": [
            {
              "origin": "https://hn.algolia.com",
              "robotsUrl": "https://hn.algolia.com/robots.txt",
              "status": 404,
              "contentType": "text/html; charset=utf-8",
              "fetchedAt": "2026-10-11T17:29:43.913Z",
              "redirects": [],
              "state": "missing",
              "allowed": true,
              "matchedRule": null,
              "selectedUserAgents": [],
              "evaluatedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=customer%20support",
              "reason": "robots.txt is missing (404/410); project policy permits access."
            }
          ],
          "robotsAllowed": true,
          "redirects": [],
          "httpStatus": 200,
          "contentType": "application/json",
          "resolvedUrl": "https://hn.algolia.com/api/v1/search_by_date?tags=show_hn&hitsPerPage=20&restrictSearchableAttributes=title&query=customer%20support",
          "fetchedAt": "2026-10-11T17:29:44.294Z",
          "maxBytes": 2000000,
          "truncated": false,
          "readable": true,
          "parserVersion": "public-sources-v1",
          "itemCount": 20
        },
        "code": null
      },
      "changeId": "source-change-b1ec40ca25ef9454ffd03f2b",
      "exclusionId": null
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-11-2",
      "type": "source-discovery",
      "day": "2026-10-11",
      "probeNumber": 2,
      "runId": "research-38159830319-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38159830319",
      "createdAt": "2026-10-11T17:29:39.443Z",
      "evolutionId": "source-evolution-2026-10-11",
      "evolutionSha256": "1b710fe05f8d2e529f4a36bd82297b5aec9d868837291a9a0e1c908bd319f4c6",
      "previousSha256": "99e2779ebb044d5a6078f12ab5b8cb504fd4dd38f0ac485aa29cb0a0dd605dca",
      "quotaBefore": 2,
      "quotaAfter": 1,
      "statisticsSha256": "aa21ab2bc59267c93bc788783eb25116ba2e9b79d187d7fc29c691d98776fe2e",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "b681f434d554a69a059ccf85",
        "url": "https://n8n.io/workflows/categories/invoice-processing",
        "checkedAt": "2026-10-11T17:29:39.443Z",
        "eligible": true,
        "reason": "Public HTTPS, robots access and bounded item parser passed.",
        "validation": {
          "publicHttps": true,
          "robots": [
            {
              "origin": "https://n8n.io",
              "robotsUrl": "https://n8n.io/robots.txt",
              "status": 200,
              "contentType": "text/plain; charset=utf-8",
              "fetchedAt": "2026-10-11T17:29:39.791Z",
              "redirects": [],
              "state": "available",
              "bytes": 76,
              "truncated": false,
              "allowed": true,
              "matchedRule": null,
              "selectedUserAgents": [
                "*"
              ],
              "evaluatedUrl": "https://n8n.io/workflows/categories/invoice-processing",
              "reason": "No matching robots Disallow rule."
            }
          ],
          "robotsAllowed": true,
          "redirects": [],
          "httpStatus": 200,
          "contentType": "text/html;charset=utf-8",
          "resolvedUrl": "https://n8n.io/workflows/categories/invoice-processing",
          "fetchedAt": "2026-10-11T17:29:43.706Z",
          "maxBytes": 2000000,
          "truncated": false,
          "readable": true,
          "parserVersion": "public-sources-v1",
          "itemCount": 10
        },
        "code": null
      },
      "changeId": "source-change-d5a64ebef3c4d4a313849f68",
      "exclusionId": null
    },
    {
      "schema": 1,
      "id": "source-discovery-2026-10-11-1",
      "type": "source-discovery",
      "day": "2026-10-11",
      "probeNumber": 1,
      "runId": "research-38159830319-1",
      "runUrl": "https://github.com/xndanius/while-you-sleep/actions/runs/38159830319",
      "createdAt": "2026-10-11T17:29:39.443Z",
      "evolutionId": "source-evolution-2026-10-11",
      "evolutionSha256": "1b710fe05f8d2e529f4a36bd82297b5aec9d868837291a9a0e1c908bd319f4c6",
      "previousSha256": null,
      "quotaBefore": 3,
      "quotaAfter": 2,
      "statisticsSha256": "aa21ab2bc59267c93bc788783eb25116ba2e9b79d187d7fc29c691d98776fe2e",
      "policySha256": "60d6ee0ebb625c6e22c9cb89759c55e4060226e1e3f18c8fd9934ab73edda2da",
      "probe": {
        "sourceId": "529fe252f6662aa1472475a1",
        "url": "https://n8n.io/workflows/categories/document-extraction",
        "checkedAt": "2026-10-11T17:29:39.443Z",
        "eligible": true,
        "reason": "Public HTTPS, robots access and bounded item parser passed.",
        "validation": {
          "publicHttps": true,
          "robots": [
            {
              "origin": "https://n8n.io",
              "robotsUrl": "https://n8n.io/robots.txt",
              "status": 200,
              "contentType": "text/plain; charset=utf-8",
              "fetchedAt": "2026-10-11T17:29:39.791Z",
              "redirects": [],
              "state": "available",
              "bytes": 76,
              "truncated": false,
              "allowed": true,
              "matchedRule": null,
              "selectedUserAgents": [
                "*"
              ],
              "evaluatedUrl": "https://n8n.io/workflows/categories/document-extraction",
              "reason": "No matching robots Disallow rule."
            }
          ],
          "robotsAllowed": true,
          "redirects": [],
          "httpStatus": 200,
          "contentType": "text/html;charset=utf-8",
          "resolvedUrl": "https://n8n.io/workflows/categories/document-extraction",
          "fetchedAt": "2026-10-11T17:29:42.124Z",
          "maxBytes": 2000000,
          "truncated": false,
          "readable": true,
          "parserVersion": "public-sources-v1",
          "itemCount": 10
        },
        "code": null
      },
      "changeId": "source-change-6eec394f9206d03b11362e9d",
      "exclusionId": null
    }
  ],
  "unknownAttribution": {
    "legacyScans": 7,
    "legacyRuns": 133,
    "legacyPosts": 5,
    "legacyPicks": 0,
    "unmappedCandidates": 0,
    "unmappedConsiderations": 39,
    "invalidConsiderations": 0,
    "omittedConsiderations": 0
  }
}
