{
  "format": "audeep.report.v1",
  "exportedAt": "2026-08-20T16:41:18.526Z",
  "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": 34,
        "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": "e52f3b25-7fe6-451b-ab39-432074a3ee83-missing-security-header-0",
          "status": "evidence-backed",
          "evidenceKinds": [
            "request"
          ],
          "summary": "The finding is tied to evidence captured during this audit."
        },
        {
          "findingId": "e52f3b25-7fe6-451b-ab39-432074a3ee83-design-control-drift-2",
          "status": "evidence-backed",
          "evidenceKinds": [
            "screenshot",
            "dom-selector"
          ],
          "summary": "The finding is tied to evidence captured during this audit."
        },
        {
          "findingId": "e52f3b25-7fe6-451b-ab39-432074a3ee83-design-color-drift-1",
          "status": "evidence-backed",
          "evidenceKinds": [
            "screenshot",
            "dom-selector"
          ],
          "summary": "The finding is tied to evidence captured during this audit."
        }
      ]
    },
    "id": "e52f3b25-7fe6-451b-ab39-432074a3ee83",
    "tier": "quick",
    "url": "https://pointaro.app/",
    "finalUrl": "https://pointaro.app/",
    "auditedAt": "2026-07-31T15:18:46.223Z",
    "score": 97,
    "grade": "A",
    "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": 0,
        "covered": true,
        "score": 100,
        "grade": "A"
      },
      {
        "class": "performance",
        "findings": 0,
        "covered": true,
        "score": 100,
        "grade": "A"
      },
      {
        "class": "seo",
        "findings": 0,
        "covered": true,
        "score": 100,
        "grade": "A"
      },
      {
        "class": "design",
        "findings": 2,
        "covered": true,
        "score": 98,
        "grade": "A"
      }
    ],
    "totalFindings": 3,
    "otherFindings": 2,
    "headline": {
      "id": "e52f3b25-7fe6-451b-ab39-432074a3ee83-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, x-frame-options, x-content-type-options",
      "evidence": {
        "selector": null,
        "request": {
          "method": "GET",
          "url": "https://pointaro.app/",
          "status": 200
        },
        "screenshot": null,
        "prominence": 0
      },
      "page": "https://pointaro.app/",
      "firstSeen": 0,
      "evidenceChip": "GET / -> 200"
    },
    "evidenceChip": "GET / -> 200",
    "findings": [
      {
        "id": "e52f3b25-7fe6-451b-ab39-432074a3ee83-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, x-frame-options, x-content-type-options",
        "evidence": {
          "selector": null,
          "request": {
            "method": "GET",
            "url": "https://pointaro.app/",
            "status": 200
          },
          "screenshot": null,
          "prominence": 0
        },
        "page": "https://pointaro.app/",
        "firstSeen": 0,
        "evidenceChip": "GET / -> 200"
      },
      {
        "id": "e52f3b25-7fe6-451b-ab39-432074a3ee83-design-control-drift-2",
        "type": "design-control-drift",
        "class": "design",
        "severity": "low",
        "confidence": "confirmed",
        "title": "Buttons on this page are styled inconsistently",
        "detail": "5 visually distinct button treatments render on one page, counting background, text colour, border, corner radius and weight (including \"Create Room\", \"What is Scrum Poker?\", \"Legal Notice\"). When every button looks different, none of them reads as the primary action, and people hesitate over which one to press.",
        "evidence": {
          "selector": "button[aria-label=\"Open navigation menu\"]",
          "request": null,
          "screenshot": "/audit-artifacts/e52f3b25-7fe6-451b-ab39-432074a3ee83/page.png",
          "prominence": 0
        },
        "page": "https://pointaro.app/",
        "firstSeen": 2,
        "evidenceChip": "button[aria-label=\"Open navigation menu\"]"
      },
      {
        "id": "e52f3b25-7fe6-451b-ab39-432074a3ee83-design-color-drift-1",
        "type": "design-color-drift",
        "class": "design",
        "severity": "low",
        "confidence": "confirmed",
        "title": "Text colours are not on a shared scale",
        "detail": "11 distinct text colours render on this page (for example rgb(0, 0, 0), color(srgb 0 0 0 / 0.72), color(srgb 0 0 0 / 0.66), color(srgb 0 0 0 / 0.67), color(srgb 0 0 0 / 0.68)). A designed palette usually lands under 10. Near-duplicate greys and one-off hex values are the usual cause, and they make the page read as assembled rather than designed.",
        "evidence": {
          "selector": "#top > div:nth-of-type(2) > p:nth-of-type(1)",
          "request": null,
          "screenshot": "/audit-artifacts/e52f3b25-7fe6-451b-ab39-432074a3ee83/page.png",
          "prominence": 0
        },
        "page": "https://pointaro.app/",
        "firstSeen": 1,
        "evidenceChip": "#top > div:nth-of-type(2) > p:nth-of-type(1)"
      }
    ],
    "severityCounts": {
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 3
    },
    "interceptSummary": {
      "totalRequests": 34,
      "targetRequests": 34,
      "targetMethods": [
        "GET"
      ],
      "methodCounts": {
        "GET": 34
      },
      "nonGetToTargetAllowed": 0,
      "nonGetToTargetBlocked": 0,
      "audeepAuthoredThirdParty": 0,
      "observeOnlyPass": true,
      "renderedPages": 1,
      "followInternalLinks": false
    },
    "displayHost": "pointaro.app",
    "displayUrl": "pointaro.app",
    "metaTitle": "Grade A - pointaro.app",
    "metaDescription": "Important browser security headers are missing - +2 other issues found. Observe-only audit by Audeep.",
    "shareText": "My site scored A on Audeep: Important browser security headers are missing",
    "pageScreenshot": "/audit-artifacts/e52f3b25-7fe6-451b-ab39-432074a3ee83/page.png"
  }
}