Problem
pdf.py:39-52 downloads DejaVu font ZIPs from hardcoded URLs using urllib.request.urlopen(). No checksum verification, no certificate pinning.
Solution
Bundle fonts in the repo or ship them as a package asset. If download is necessary, verify SHA-256 checksums.
Acceptance Criteria
Difficulty: Medium
Problem
pdf.py:39-52downloads DejaVu font ZIPs from hardcoded URLs usingurllib.request.urlopen(). No checksum verification, no certificate pinning.Solution
Bundle fonts in the repo or ship them as a package asset. If download is necessary, verify SHA-256 checksums.
Acceptance Criteria
Difficulty: Medium