{
  "bomFormat": "CycloneDX",
  "specVersion": "1.5",
  "serialNumber": "urn:uuid:073ca812-7b8b-43b1-a724-2fff54a941ed",
  "version": 1,
  "metadata": {
    "timestamp": "2026-07-23T16:44:41Z",
    "authors": [
      {
        "name": "Trooth, LLC",
        "email": "hello@trooth.co"
      }
    ],
    "component": {
      "type": "application",
      "name": "trooth-platform-workers",
      "version": "1.0.0",
      "description": "Trooth platform first-party service workers (API, scan, directory, forms, Stripe webhooks, TruePass, Article 50 engine). Direct dependencies listed; marketing site (trooth.co) is built and hosted separately on Vercel.",
      "supplier": {
        "name": "Trooth, LLC",
        "url": [
          "https://trooth.co"
        ]
      }
    }
  },
  "components": [
    {
      "type": "library",
      "name": "@cloudflare/workers-types",
      "version": "4.20260602.1",
      "purl": "pkg:npm/%40cloudflare/workers-types@4.20260602.1",
      "scope": "optional",
      "properties": [
        {
          "name": "trooth:component",
          "value": "trooth-scan-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-directory-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-form-handler-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-stripe-webhook-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-truepass-worker"
        }
      ]
    },
    {
      "type": "library",
      "name": "@cloudflare/workers-types",
      "version": "4.20260626.1",
      "purl": "pkg:npm/%40cloudflare/workers-types@4.20260626.1",
      "scope": "optional",
      "properties": [
        {
          "name": "trooth:component",
          "value": "trooth-article-50-engine"
        }
      ]
    },
    {
      "type": "library",
      "name": "@sentry/cloudflare",
      "version": "10.56.0",
      "purl": "pkg:npm/%40sentry/cloudflare@10.56.0",
      "scope": "required",
      "properties": [
        {
          "name": "trooth:component",
          "value": "trooth-scan-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-directory-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-form-handler-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-stripe-webhook-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-truepass-worker"
        }
      ]
    },
    {
      "type": "library",
      "name": "@sentry/cloudflare",
      "version": "10.62.0",
      "purl": "pkg:npm/%40sentry/cloudflare@10.62.0",
      "scope": "required",
      "properties": [
        {
          "name": "trooth:component",
          "value": "trooth-article-50-engine"
        }
      ]
    },
    {
      "type": "library",
      "name": "typescript",
      "version": "5.9.3",
      "purl": "pkg:npm/typescript@5.9.3",
      "scope": "optional",
      "properties": [
        {
          "name": "trooth:component",
          "value": "trooth-article-50-engine"
        },
        {
          "name": "trooth:component",
          "value": "trooth-scan-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-directory-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-form-handler-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-stripe-webhook-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-truepass-worker"
        }
      ]
    },
    {
      "type": "library",
      "name": "vitest",
      "version": "1.6.1",
      "purl": "pkg:npm/vitest@1.6.1",
      "scope": "optional",
      "properties": [
        {
          "name": "trooth:component",
          "value": "trooth-article-50-engine"
        },
        {
          "name": "trooth:component",
          "value": "trooth-scan-worker"
        }
      ]
    },
    {
      "type": "library",
      "name": "wrangler",
      "version": "3.114.17",
      "purl": "pkg:npm/wrangler@3.114.17",
      "scope": "optional",
      "properties": [
        {
          "name": "trooth:component",
          "value": "trooth-article-50-engine"
        },
        {
          "name": "trooth:component",
          "value": "trooth-scan-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-directory-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-form-handler-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-stripe-webhook-worker"
        },
        {
          "name": "trooth:component",
          "value": "trooth-truepass-worker"
        }
      ]
    }
  ]
}
