# S01 root cause — initial verified findings Baseline26d531c; application/renderer/font/preview sources unchanged from5032ccb. Original goldens and2mm oracle are untouched. This diagnosis does **not** accept a new reference or close the existing PDF gate. Every revised failure is explained by an **incorrect test assumption**: `scripts/verify-cv-fidelity.py` compares DOM `Range.getClientRects().top` with pdfplumber/pdfminer's `word.top`. These are different metric boxes. DOM Range uses the browser font ascent/descent; installed pdfminer builds a one-em character cell from the PDF descriptor's descent, rather than the DOM ascent or actual glyph outline. Neither top is the visible glyph top. The installed primary sources are `pdfminer.layout.LTChar.__init__` (horizontal bbox from descent and fontsize) and `pdfminer.pdffont.PDFFont.__init__` (normalises positive descriptor descent to negative). Actual native PDF text matrices and descriptors, current browser DOM ranges, an inline zero-height baseline sentinel and independent canvas ascent were measured. In all36 documents on each platform, sentinel/canvas baselines agree without changing geometry; the descent-cell formula reproduces the original S01 discrepancy to less than0.01px. The initial unchanged corpora reproduce **28 Windows /20 Linux** failures, all S01-only. Actual baseline differences are at most **0.2232mm Windows /0.4878mm Linux**, within the existing2mm physical bound; separate actual-raster name-ink differences are at most3px. These are diagnostic results, not an approved replacement gate. Font sizes, marker/page membership, other marker positions, completeness/bounds and full-height sidebars remain independently checked. Windows and Linux emit different descriptor metadata for the same bundled fonts. For Selawik-Bold the measured Windows ascent/descent is1079.10156/+250.97656, Linux989.74609/−210.44922; Roboto-Bold also differs. Arimo/Gelasio/Poppins descent magnitudes agree, while signs and some other metadata differ. The formula normalises signs as the installed extractor does. Some actual baseline rounding differs by about1px too, but does not explain the multi-mm cell-top discrepancy. Linux's smaller descent-cell offset takes the four technical and four nordic documents below the original cutoff; code/modern/executive/elegant remain above it. The final per-document report must verify these sets from actual fresh results, not assume this initial count. No layout change is justified merely to force unequal coordinate conventions to agree: it would move correctly aligned visible text or alter intended title sizing. No clipping, lost content, misplaced photo/sidebar or pagination defect was established by these S01 failures. Finite automated findings do not establish human typography/whitespace/print acceptance. Remediation proposed for owner decision: retain the historical oracle and results; adopt a like-for-like native text-baseline diagnostic with the **same2mm bound** for revised S01, alongside actual-raster evidence and all existing font/content/page/color/other-marker checks. Keep this supplementary until explicit approval. No golden regeneration, arbitrary threshold increase, renderer change or automatic Phase10 entry is performed. Direct read-only inspection of the shipped SFNT tables also explains the metadata choice: for Selawik/Roboto (USE_TYPO_METRICS=false), the Windows descriptors match OS/2 usWinAscent/usWinDescent, while Linux matches hhea ascent/descent. For Arimo/Gelasio/Poppins (USE_TYPO_METRICS=true), both platforms match their equal typo/hhea ascent/descent magnitudes. This is measured font-table correspondence, not a claim about uninspected browser implementation internals. No font was substituted or edited. ## Separate defect found by full-name inspection The S01-only raster crop does not cover name diacritics. A new real-browser glyph-clearance regression found24/36 failures across nine themes, photo/no-photo and Norwegian/additional European name variants (eight themes affected). The glyph ink could extend1–5px above the first print fragment; both preview/export can therefore agree while clipping the same accent. This is an actual rendering defect, independent of the S01 metric mismatch, not a cosmetic waiver. Candidate-only preview tests with revised name line-height1.4 pass36/36 with at least1px clearance. The production correction and fresh native before/after verification are still required; version1 must remain unchanged. The matching executive letter heading also reproduces2/18 failed glyph-clearance cases (up to4px above the clipping edge). A smaller candidate correction adds2mm block-start padding to revised CV names and revised letter sender headings. It preserves existing inter-line leading and measures36/36 CV variants (minimum2.546875px clearance) and18/18 letter variants (minimum3.546875px) in candidate-only previews. Those are preparation results; actual shared-renderer/native export verification remains separate. ## Native version boundary The retained Windows native/preview Chromium is151.0.7922.34; the pinned Linux fixture reports native Chromium156.0.8078.47 on Debian12. Its preview capture still uses the Windows browser. Thus operating system and native browser release both vary. The descriptor-table differences and their numeric effect are directly verified, but attributing the selection solely to the operating system would require a matched-version experiment. No additional browser artifact was downloaded. Qualification is bounded to the exact recorded fixtures. ## Implemented correction and evidence boundary The exploratory line-height candidates above were superseded by the smaller shared-renderer correction in154a9e89f565e786d7df00bf93d873da900a7c7d: designVersion2 CV names and matching letter sender headings receive2mm top padding, preserving their existing leading. Version1 markup, existing stored documents and frozen revisions are unchanged. The new actual API/native-export assertions failed before the correction and pass with the exact committed source; each platform's existing two template cases also exports nine no-photo European-name CV controls and nine European-name letters. These documents are additional fixture coverage, not18 additional browser tests. The final results and per-document classification are in REPORT.md and the indexed native evidence. Earlier paragraphs deliberately retain the investigation's chronology and candidate-only qualifications; they do not mean the implemented renderer is still awaiting implementation. No S01 oracle, historical reference, bundled font or tolerance was changed. Human visual and physical print acceptance remain pending.