{
  "ai_generated_content": {
    "alt_text_entries": 0,
    "entries_flagged_for_human_review": 0,
    "fallback_used": false,
    "gateway_used": false,
    "images_classified_decorative": 0,
    "models": [],
    "prompt_versions": [],
    "providers": [],
    "used": false
  },
  "change_manifest_summary": {
    "by_change": {
      "font_substituted": 2,
      "metadata_set": 4,
      "tag_added": 5
    },
    "total_changes": 11
  },
  "claims": [
    {
      "basis": "remediator.analysis.checks",
      "claim": "All machine-verifiable checks pass on the output file",
      "established": true,
      "in_threshold": true
    },
    {
      "basis": "pre/post text extraction comparison",
      "claim": "Extracted text is preserved byte-for-byte (FR-REM-3)",
      "established": true,
      "in_threshold": true
    },
    {
      "basis": "DocoMatic Score 100.0",
      "claim": "DocoMatic Score \u2265 95",
      "established": true,
      "in_threshold": true
    },
    {
      "basis": "veraPDF PDF/UA-1: PASSED \u2014 106 rules passed, zero failures (veraPDF REST http://localhost:17001, profile ua1).",
      "claim": "PDF/UA-1 conformance confirmed by veraPDF",
      "established": true,
      "in_threshold": true
    }
  ],
  "consistency": {
    "analyzer_version": "l1-analyzer-0.4.0",
    "guarantee": "Re-analyzing the output file with the same analyzer version reproduces score_after exactly (FR-VER-5)."
  },
  "credits": {
    "consumed": 4,
    "reserved": 4
  },
  "document": {
    "pages": 1,
    "sha256_after": "d82b7c3af7a85da220fb7aadf05d3f7a154b0f45299747ad16ead80b8fc382ba",
    "sha256_before": "d1b6ac39c32759aadb7885afd1b7ebc52e9de12b3bd580e4b3378d93d9869cc9",
    "source_name": "budget-000.pdf",
    "version_id": "v-d1b6ac39c32759aa-L2"
  },
  "font_substitutions": [
    {
      "metric_compatible": true,
      "original": "Helvetica",
      "pages": [
        1
      ],
      "reason": "PDF/UA-1 7.21.4.1 requires an embedded font program; the standard-14 alias has none",
      "substitute": "Arial.ttf",
      "substitute_sha256": "525979822591a3447cfc49d943d6f7683508e25543407871c0ed8fed05fd2bd9"
    },
    {
      "metric_compatible": true,
      "original": "Helvetica-Bold",
      "pages": [
        1
      ],
      "reason": "PDF/UA-1 7.21.4.1 requires an embedded font program; the standard-14 alias has none",
      "substitute": "Arial Bold.ttf",
      "substitute_sha256": "d72db21f9242aedd6b917d8549ad5921766b24d5f8d0becfda2ff4c620b3c2e0"
    }
  ],
  "jurisdiction_profile": "US default profile: ADA Title II web/document accessibility rule (WCAG 2.1 AA; PDF/UA-1 as the technical target for PDFs). Verification here covers machine-verifiable PDF/UA-1 requirements.",
  "jurisdiction_profile_key": null,
  "kind": "verification-report",
  "level": "L2",
  "machine_checks": {
    "after": {
      "all_pass": true,
      "details": {
        "lang": "en-US",
        "markinfo_marked": true,
        "struct_elements": 25,
        "title": "Annual Budget Summary and Departmental Allocations",
        "untagged": [],
        "untagged_count": 0
      },
      "display_doc_title": true,
      "language_present": true,
      "no_untagged_content": true,
      "tag_tree_present": true,
      "title_present": true
    },
    "before": {
      "all_pass": false,
      "details": {
        "lang": "",
        "markinfo_marked": false,
        "struct_elements": 0,
        "title": "untitled",
        "untagged": [
          "page 0 instr 11 op Tj untagged",
          "page 0 instr 20 op Tj untagged",
          "page 0 instr 25 op Tj untagged",
          "page 0 instr 34 op Tj untagged",
          "page 0 instr 39 op Tj untagged",
          "page 0 instr 44 op Tj untagged",
          "page 0 instr 53 op Tj untagged",
          "page 0 instr 58 op Tj untagged",
          "page 0 instr 67 op Tj untagged",
          "page 0 instr 72 op Tj untagged",
          "page 0 instr 77 op Tj untagged",
          "page 0 instr 86 op Tj untagged",
          "page 0 instr 91 op Tj untagged",
          "page 0 instr 96 op Tj untagged",
          "page 0 instr 105 op Tj untagged",
          "page 0 instr 110 op Tj untagged",
          "page 0 instr 115 op Tj untagged",
          "page 0 instr 124 op Tj untagged",
          "page 0 instr 129 op Tj untagged",
          "page 0 instr 134 op Tj untagged"
        ],
        "untagged_count": 33
      },
      "display_doc_title": false,
      "language_present": false,
      "no_untagged_content": false,
      "tag_tree_present": false,
      "title_present": true
    }
  },
  "machine_unverifiable": [
    "Reading order for 5 tagged element(s) was inferred from layout analysis (position, columns, flow); not human-reviewed.",
    "1 heading level(s) were inferred from font size, weight and position, not from any structure in the source file; not human-reviewed.",
    "Visual fidelity: the unembedded font Helvetica was replaced with the metric-compatible Arial.ttf on page 1, because PDF/UA-1 7.21.4.1 requires an embedded font program. Text position and line breaks are unchanged, but glyph shapes differ, so the page does not render pixel-identically to the original.",
    "Visual fidelity: the unembedded font Helvetica-Bold was replaced with the metric-compatible Arial Bold.ttf on page 1, because PDF/UA-1 7.21.4.1 requires an embedded font program. Text position and line breaks are unchanged, but glyph shapes differ, so the page does not render pixel-identically to the original.",
    "Document title was derived from first H1; not human-reviewed.",
    "Document language was detected statistically from the text; not human-reviewed.",
    "Table header cells and their scope were inferred from ruling lines and cell alignment; not human-reviewed."
  ],
  "matterhorn": {
    "checkpoints": [
      {
        "after": "pass",
        "before": "fail",
        "checkpoint": "01-005",
        "description": "Content is neither marked as Artifact nor tagged as real content",
        "machine_check": "no_untagged_content"
      },
      {
        "after": "pass",
        "before": "fail",
        "checkpoint": "01-006",
        "description": "Structure tree missing or empty",
        "machine_check": "tag_tree_present"
      },
      {
        "after": "pass",
        "before": "pass",
        "checkpoint": "06-002",
        "description": "Document title missing (DocInfo/XMP dc:title)",
        "machine_check": "title_present"
      },
      {
        "after": "pass",
        "before": "fail",
        "checkpoint": "07-001",
        "description": "ViewerPreferences DisplayDocTitle absent or false",
        "machine_check": "display_doc_title"
      },
      {
        "after": "pass",
        "before": "fail",
        "checkpoint": "11-001",
        "description": "Natural language of the document cannot be determined (/Lang missing)",
        "machine_check": "language_present"
      }
    ],
    "note": "Subset mapped from local machine checks; the full checkpoint table arrives with veraPDF integration."
  },
  "notices": [
    "Machine checks are the floor, not the ceiling: passing every machine-verifiable rule does not by itself make a document accessible to a human reader. Items listed under machine_unverifiable were produced automatically and have not been human-reviewed unless a reviewer attestation is present.",
    "This report is not legal advice. Jurisdiction profile wording is informational only.",
    "This report is bound to the output file by its sha256. Files edited after remediation are not covered by this report."
  ],
  "report_version": 2,
  "reviewer_attestation": null,
  "reviewer_attestation_verifiable": false,
  "reviewer_attestation_version": null,
  "sample": true,
  "scores": {
    "after": {
      "categories": {
        "forms": {
          "applicable": false,
          "detail": {
            "basis": "no AcroForm fields \u2014 weight redistributed (FR-ANA-3)",
            "form_fields": 0
          },
          "points": null,
          "published_weight": 15,
          "rate": null,
          "vacuous": false,
          "weight": 0.0
        },
        "language_fonts": {
          "applicable": true,
          "detail": {
            "signals": {
              "language_present": 1.0,
              "text_extractable": 1.0
            }
          },
          "points": 11.76,
          "published_weight": 10,
          "rate": 1.0,
          "vacuous": false,
          "weight": 11.76
        },
        "navigation_metadata": {
          "applicable": true,
          "detail": {
            "bookmarks": false,
            "pages": 1,
            "pages_with_tabs_s": 1,
            "signals": {
              "bookmarks": 1.0,
              "display_doc_title": 1.0,
              "tab_order": 1.0,
              "title_present": 1.0
            },
            "toc": false
          },
          "points": 11.76,
          "published_weight": 10,
          "rate": 1.0,
          "vacuous": false,
          "weight": 11.76
        },
        "structure": {
          "applicable": true,
          "detail": {
            "headings": {
              "basis": "tagged headings / headings visible to layout analysis",
              "coverage": 1.0,
              "heading_level_skips": 0,
              "starts_at_h1": true,
              "tagged_headings": 1,
              "visual_headings": 1
            },
            "li_outside_l": 0,
            "signals": {
              "heading_quality": 1.0,
              "list_nesting": 1.0,
              "no_untagged_content": 1.0,
              "tag_tree_present": 1.0
            }
          },
          "points": 35.29,
          "published_weight": 30,
          "rate": 1.0,
          "vacuous": false,
          "weight": 35.29
        },
        "tables": {
          "applicable": true,
          "detail": {
            "basis": "per-table TH /Scope coverage (+ /Headers on spans)",
            "tables": 1
          },
          "points": 17.65,
          "published_weight": 15,
          "rate": 1.0,
          "vacuous": false,
          "weight": 17.65
        },
        "text_alternatives": {
          "applicable": true,
          "detail": {
            "basis": "no images drawn as real content",
            "figures": 0,
            "figures_with_alt": 0,
            "images_drawn_as_content": 0
          },
          "points": 23.53,
          "published_weight": 20,
          "rate": 1.0,
          "vacuous": true,
          "weight": 23.53
        }
      },
      "engine_version": "docomatic-score-2.0.0",
      "formula": "fr-ana-3-weighted-composite/forms-only-redistribution",
      "hard_fail_cap_applied": false,
      "hard_failures": [],
      "published_weights": {
        "forms": 15,
        "language_fonts": 10,
        "navigation_metadata": 10,
        "structure": 30,
        "tables": 15,
        "text_alternatives": 20
      },
      "redistributable": [
        "forms"
      ],
      "total": 100.0
    },
    "before": {
      "categories": {
        "forms": {
          "applicable": false,
          "detail": {
            "basis": "no AcroForm fields \u2014 weight redistributed (FR-ANA-3)",
            "form_fields": 0
          },
          "points": null,
          "published_weight": 15,
          "rate": null,
          "vacuous": false,
          "weight": 0.0
        },
        "language_fonts": {
          "applicable": true,
          "detail": {
            "signals": {
              "language_present": 0.0,
              "text_extractable": 1.0
            }
          },
          "points": 5.88,
          "published_weight": 10,
          "rate": 0.5,
          "vacuous": false,
          "weight": 11.76
        },
        "navigation_metadata": {
          "applicable": true,
          "detail": {
            "bookmarks": false,
            "pages": 1,
            "pages_with_tabs_s": 0,
            "signals": {
              "bookmarks": 1.0,
              "display_doc_title": 0.0,
              "tab_order": 0.0,
              "title_present": 1.0
            },
            "toc": false
          },
          "points": 7.06,
          "published_weight": 10,
          "rate": 0.6,
          "vacuous": false,
          "weight": 11.76
        },
        "structure": {
          "applicable": true,
          "detail": {
            "basis": "no structure tree"
          },
          "points": 0.0,
          "published_weight": 30,
          "rate": 0.0,
          "vacuous": false,
          "weight": 35.29
        },
        "tables": {
          "applicable": true,
          "detail": {
            "basis": "no Table elements in the structure tree; this analyzer cannot detect an UNTAGGED table, so this category is satisfied vacuously",
            "tables": 0
          },
          "points": 17.65,
          "published_weight": 15,
          "rate": 1.0,
          "vacuous": true,
          "weight": 17.65
        },
        "text_alternatives": {
          "applicable": true,
          "detail": {
            "basis": "no images drawn as real content",
            "figures": 0,
            "figures_with_alt": 0,
            "images_drawn_as_content": 0
          },
          "points": 23.53,
          "published_weight": 20,
          "rate": 1.0,
          "vacuous": true,
          "weight": 23.53
        }
      },
      "engine_version": "docomatic-score-2.0.0",
      "formula": "fr-ana-3-weighted-composite/forms-only-redistribution",
      "hard_fail_cap_applied": true,
      "hard_failures": [
        "no_tag_tree",
        "no_language",
        "untagged_content"
      ],
      "published_weights": {
        "forms": 15,
        "language_fonts": 10,
        "navigation_metadata": 10,
        "structure": 30,
        "tables": 15,
        "text_alternatives": 20
      },
      "redistributable": [
        "forms"
      ],
      "total": 40.0
    }
  },
  "threshold": "L2: machine checks pass + text preserved + Score \u2265 95 + veraPDF PDF/UA-1 conformant",
  "timestamps": {
    "note": "Deterministic pipeline timestamp (FR-REM-14); wall-clock submission times live in the job record.",
    "remediated": "2026-09-15T03:16:19Z"
  },
  "verapdf": {
    "conformant": true,
    "detail": "veraPDF REST http://localhost:17001, profile ua1",
    "failed_rules": 0,
    "in_threshold": true,
    "passed_rules": 106,
    "profile": "PDF/UA-1",
    "ran": true,
    "rules": [],
    "statement": "veraPDF PDF/UA-1: PASSED \u2014 106 rules passed, zero failures (veraPDF REST http://localhost:17001, profile ua1).",
    "status": "passed",
    "validator": "veraPDF"
  },
  "verdict": "verified",
  "verdict_label": "verified against the L2 threshold: all machine checks pass, the extracted text is preserved, the DocoMatic Score is 100.0 (\u2265 95), and veraPDF confirms PDF/UA-1 conformance with zero failed rules.",
  "verdict_reasons": [],
  "versions": {
    "ai_models": [],
    "ai_prompt_versions": [],
    "analyzer": "l1-analyzer-0.4.0",
    "pipeline": "l2-0.1.0",
    "score_engine": "docomatic-score-2.0.0",
    "tools": {
      "pikepdf": "9.4.2",
      "pypdf": "6.18.1",
      "remediator": "0.1.0"
    }
  }
}
