{
  "schema_version": 1,
  "framework": "EU_AI_ACT",
  "report_id": "librechat-article50-openai-full-initial",
  "generated_at": 1777712821717,
  "bundle_artifacts": {
    "compare_report_href": "compare-report.json",
    "primary_report_html_href": "report.html",
    "manifest_href": "artifacts/manifest.json",
    "article_50_transparency_marking_href": "compliance/article-50-transparency-marking.json"
  },
  "request_context": {
    "state": "enabled",
    "source": "builder",
    "verification_mode": "standard",
    "declared_roles": [
      "provider"
    ],
    "requested_obligations": [
      "interaction_disclosure"
    ],
    "declared_modalities": [
      "text"
    ],
    "declared_marking_mechanisms": [],
    "declared_delivery_channels": [
      "web_ui"
    ],
    "scope_rationale": "This standalone LibreChat Article 50 package is limited to first-interaction AI disclosure. Synthetic-content marking under Article 50(2) is excluded from scope for this pilot because the evaluated delivery path does not retain machine-readable text provenance artifacts.",
    "scope_evidence_ref": "records/article50/synthetic-content-scope-decision-memo.pdf"
  },
  "document_scope": {
    "article": "Art_50",
    "generated_scope": "article_50_transparency_evidence",
    "legal_sufficiency": "documented_for_handoff",
    "completion_readiness_status": "ready_for_handoff",
    "approval_status": "approved_for_handoff",
    "closing_verdict": "handoff_ready",
    "operator_inputs_required": []
  },
  "completion_summary": {
    "package_owner": "LibreChat pilot compliance owner",
    "approval_status": "approved_for_handoff",
    "approver": "LibreChat pilot reviewer - compliance lead",
    "approval_date_scope": "2026-05-02 / LibreChat Article 50 pilot",
    "signoff_record_ref": "records/approvals/final-signoff-record.pdf",
    "required_confirmation_count": 2,
    "completed_confirmation_count": 2,
    "blocking_items": [],
    "obligation_confirmations": [
      {
        "obligation": "interaction_disclosure",
        "readiness_status": "completed",
        "resolution": "confirmed",
        "missing_items": [],
        "evidence_ref": "records/article50/interaction-disclosure-first-touch.pdf",
        "location_note": "First-response disclosure in the primary chat experience before substantive assistance is displayed."
      },
      {
        "obligation": "synthetic_content_marking",
        "readiness_status": "not_applicable",
        "resolution": "not_applicable",
        "missing_items": []
      },
      {
        "obligation": "synthetic_content_marking_preservation",
        "readiness_status": "not_applicable",
        "resolution": "not_applicable",
        "missing_items": []
      },
      {
        "obligation": "emotion_or_biometric_disclosure",
        "readiness_status": "not_applicable",
        "resolution": "not_applicable",
        "missing_items": []
      },
      {
        "obligation": "deepfake_disclosure",
        "readiness_status": "not_applicable",
        "resolution": "not_applicable",
        "missing_items": []
      },
      {
        "obligation": "public_interest_text_disclosure",
        "readiness_status": "not_applicable",
        "resolution": "not_applicable",
        "missing_items": []
      }
    ]
  },
  "evaluated_outputs": {
    "retained_generated_output_found": true,
    "content_classes": [
      "text"
    ],
    "retained_output_artifacts": [
      "assets/final_output/librechat_article50_interaction/new.json"
    ],
    "retained_output_manifest_keys": [
      "librechat_article50_interaction/new/final_output"
    ]
  },
  "marking_evidence": {
    "status": "partial",
    "marker_evidence_found": true,
    "marker_types": [
      "human_disclosure"
    ],
    "machine_readable_evidence_found": false,
    "human_readable_disclosure_found": true,
    "provider_claimed_marker": false,
    "verification_engine": "machine_readable_verifier",
    "verification_result": "disclosure_only",
    "preservation_result": "not_tested"
  },
  "transparency_obligations": {
    "declared_roles": [
      "provider"
    ],
    "requested_obligations": [
      "interaction_disclosure"
    ],
    "interaction_disclosure": {
      "in_scope": true,
      "status": "covered",
      "disclosure_evidence_found": true,
      "coverage_basis": "technical_evidence_and_provider_record",
      "residual_gaps": []
    },
    "synthetic_content_marking": {
      "in_scope": false,
      "status": "not_applicable",
      "coverage_basis": "none",
      "machine_readable_evidence_found": false,
      "human_readable_disclosure_found": false,
      "preservation_result": "not_tested",
      "residual_gaps": []
    },
    "emotion_or_biometric_disclosure": {
      "in_scope": false,
      "status": "not_applicable",
      "disclosure_evidence_found": false,
      "coverage_basis": "none",
      "residual_gaps": []
    },
    "deepfake_disclosure": {
      "in_scope": false,
      "status": "not_applicable",
      "disclosure_evidence_found": false,
      "coverage_basis": "none",
      "residual_gaps": []
    },
    "public_interest_text_disclosure": {
      "in_scope": false,
      "status": "not_applicable",
      "disclosure_evidence_found": false,
      "coverage_basis": "none",
      "residual_gaps": []
    }
  },
  "reviewer_guidance": [
    "This export records Article 50 obligation coverage, with the strongest technical verification focused on Article 50(2) machine-readable synthetic-content marking.",
    "Treat visible labels or natural-language disclosure as disclosure evidence, not as proof of machine-readable Article 50 marking.",
    "Treat metadata, C2PA/content credentials, sidecar manifests, headers, or schema fields as presence evidence only until a channel-specific preservation check is run.",
    "Treat documented_for_handoff as package-level sufficiency for reviewer or counsel handoff after scope, confirmations, and evidence references are recorded; it is not a formal legal opinion that Article 50 compliance is conclusively established."
  ],
  "residual_gaps": [
    "No machine-readable marking evidence was found; visible or textual disclosure alone is not treated as Article 50 machine-readable marking.",
    "Cryptographic C2PA credential-chain validation, deep binary watermark extraction beyond supported metadata carriers, and any formal legal opinion remain outside this verifier."
  ],
  "surface": {
    "id": "eu-ai-act",
    "label": "EU AI Act Article 50 evidence report",
    "kind": "vertical",
    "base_contract": "report-contract-v5",
    "vertical_contract": "eu-ai-act-article-50"
  },
  "surface_version": "eu-ai-act-article-50-v1"
}
