{
  "format": "audeep.report.v1",
  "exportedAt": "2026-08-11T18:10:52.962Z",
  "report": {
    "schemaVersion": 2,
    "contract": {
      "productUnderstanding": {
        "source": "surface-observation",
        "productName": null,
        "productCategory": "unknown",
        "summary": "This report used the audited public surface without paid discovery context.",
        "capabilities": [],
        "authSignals": [],
        "publicPaths": [],
        "apiOrigins": [],
        "discovery": null
      },
      "coverage": {
        "accessMode": "public",
        "status": "complete",
        "renderedPages": 1,
        "targetRequests": 19,
        "pageBudget": 1,
        "targetRequestBudget": 80,
        "discoveredPublicPathCount": 0,
        "allowedApiOriginCount": 0,
        "syntheticSignupCompleted": false,
        "postSignupTargetWrites": 0
      },
      "observedActions": [],
      "safeStops": [],
      "cleanupResidue": {
        "status": "not-required",
        "summary": "No synthetic account or target records were created by this audit.",
        "residue": []
      },
      "findingVerification": [
        {
          "findingId": "448f5ee3-efc7-427e-be43-b56d5a510597-ux-viewport-overflow-1",
          "status": "evidence-backed",
          "evidenceKinds": [
            "screenshot",
            "dom-selector"
          ],
          "summary": "The finding is tied to evidence captured during this audit."
        },
        {
          "findingId": "448f5ee3-efc7-427e-be43-b56d5a510597-seo-social-preview-3",
          "status": "evidence-backed",
          "evidenceKinds": [
            "screenshot",
            "dom-selector",
            "request"
          ],
          "summary": "The finding is tied to evidence captured during this audit."
        },
        {
          "findingId": "448f5ee3-efc7-427e-be43-b56d5a510597-missing-security-header-0",
          "status": "evidence-backed",
          "evidenceKinds": [
            "request"
          ],
          "summary": "The finding is tied to evidence captured during this audit."
        }
      ]
    },
    "id": "448f5ee3-efc7-427e-be43-b56d5a510597",
    "tier": "quick",
    "url": "https://nebulynk.net/",
    "finalUrl": "https://nebulynk.net/",
    "auditedAt": "2026-08-08T15:15:19.614Z",
    "score": 88,
    "grade": "B",
    "dimensions": [
      {
        "class": "functional",
        "findings": 0,
        "covered": true,
        "score": 100,
        "grade": "A"
      },
      {
        "class": "security",
        "findings": 1,
        "covered": true,
        "score": 99,
        "grade": "A"
      },
      {
        "class": "accessibility",
        "findings": 0,
        "covered": true,
        "score": 100,
        "grade": "A"
      },
      {
        "class": "ux",
        "findings": 2,
        "covered": true,
        "score": 95,
        "grade": "B"
      },
      {
        "class": "performance",
        "findings": 0,
        "covered": true,
        "score": 100,
        "grade": "A"
      },
      {
        "class": "seo",
        "findings": 3,
        "covered": true,
        "score": 94,
        "grade": "B"
      },
      {
        "class": "design",
        "findings": 0,
        "covered": true,
        "score": 100,
        "grade": "A"
      }
    ],
    "totalFindings": 6,
    "otherFindings": 5,
    "headline": {
      "id": "448f5ee3-efc7-427e-be43-b56d5a510597-ux-viewport-overflow-1",
      "type": "ux-viewport-overflow",
      "class": "ux",
      "severity": "medium",
      "confidence": "confirmed",
      "title": "Content is clipped at the mobile viewport edge",
      "detail": "At 375px wide, content runs 34px past the viewport and is cut off by an ancestor's overflow:hidden.",
      "evidence": {
        "selector": "#main-content > section:nth-of-type(1) > div:nth-of-type(1)",
        "request": null,
        "screenshot": "/audit-artifacts/448f5ee3-efc7-427e-be43-b56d5a510597/page.png",
        "prominence": 0.75293928035982
      },
      "page": "https://nebulynk.net/",
      "firstSeen": 1,
      "evidenceChip": "#main-content > section:nth-of-type(1) > div:nth-of-type(1)"
    },
    "evidenceChip": "#main-content > section:nth-of-type(1) > div:nth-of-type(1)",
    "findings": [
      {
        "id": "448f5ee3-efc7-427e-be43-b56d5a510597-ux-viewport-overflow-1",
        "type": "ux-viewport-overflow",
        "class": "ux",
        "severity": "medium",
        "confidence": "confirmed",
        "title": "Content is clipped at the mobile viewport edge",
        "detail": "At 375px wide, content runs 34px past the viewport and is cut off by an ancestor's overflow:hidden.",
        "evidence": {
          "selector": "#main-content > section:nth-of-type(1) > div:nth-of-type(1)",
          "request": null,
          "screenshot": "/audit-artifacts/448f5ee3-efc7-427e-be43-b56d5a510597/page.png",
          "prominence": 0.75293928035982
        },
        "page": "https://nebulynk.net/",
        "firstSeen": 1,
        "evidenceChip": "#main-content > section:nth-of-type(1) > div:nth-of-type(1)"
      },
      {
        "id": "448f5ee3-efc7-427e-be43-b56d5a510597-seo-social-preview-3",
        "type": "seo-social-preview",
        "class": "seo",
        "severity": "medium",
        "confidence": "confirmed",
        "title": "Links to this page have no share preview image",
        "detail": "Missing og:image. Pasted into Slack, LinkedIn, iMessage or X, this page shows as a plain text link with no card, which reliably costs clicks.",
        "evidence": {
          "selector": "head",
          "request": {
            "method": "GET",
            "url": "https://nebulynk.net/",
            "status": 200
          },
          "screenshot": "/audit-artifacts/448f5ee3-efc7-427e-be43-b56d5a510597/page.png",
          "prominence": 0
        },
        "page": "https://nebulynk.net/",
        "firstSeen": 3,
        "evidenceChip": "GET / -> 200"
      },
      {
        "id": "448f5ee3-efc7-427e-be43-b56d5a510597-missing-security-header-0",
        "type": "missing-security-header",
        "class": "security",
        "severity": "low",
        "confidence": "confirmed",
        "title": "Important browser security headers are missing",
        "detail": "Missing: content-security-policy, strict-transport-security, x-frame-options, x-content-type-options",
        "evidence": {
          "selector": null,
          "request": {
            "method": "GET",
            "url": "https://nebulynk.net/",
            "status": 200
          },
          "screenshot": null,
          "prominence": 0
        },
        "page": "https://nebulynk.net/",
        "firstSeen": 0,
        "evidenceChip": "GET / -> 200"
      }
    ],
    "severityCounts": {
      "critical": 0,
      "high": 0,
      "medium": 2,
      "low": 4
    },
    "interceptSummary": {
      "totalRequests": 20,
      "targetRequests": 19,
      "targetMethods": [
        "GET"
      ],
      "methodCounts": {
        "GET": 20
      },
      "nonGetToTargetAllowed": 0,
      "nonGetToTargetBlocked": 0,
      "audeepAuthoredThirdParty": 0,
      "observeOnlyPass": true,
      "renderedPages": 1,
      "followInternalLinks": false
    },
    "displayHost": "nebulynk.net",
    "displayUrl": "nebulynk.net",
    "metaTitle": "Grade B - nebulynk.net",
    "metaDescription": "Content is clipped at the mobile viewport edge - +5 other issues found. Observe-only audit by Audeep.",
    "shareText": "My site scored B on Audeep: Content is clipped at the mobile viewport edge",
    "pageScreenshot": "/audit-artifacts/448f5ee3-efc7-427e-be43-b56d5a510597/page.png"
  }
}