feat(cv): harden multi-page builder
CI and Deploy / test (pull_request) Failing after 3m0s
CI and Deploy / deploy (pull_request) Has been skipped

Wrap pathological content, paginate oversized entries, measure A4 and Letter previews correctly, unify section ordering, and gate stored-output actions on saved state.
This commit is contained in:
cesnimda
2026-08-15 14:09:51 +02:00
parent d424633f95
commit 5203ddea72
19 changed files with 508 additions and 206 deletions
+5 -3
View File
@@ -51,9 +51,11 @@ dense), `ats-classic` (single, no graphics), `nordic` (sidebar-right), `elegant`
- **ATS-friendliness** is a data flag: `CvTheme.AtsFriendly` (set on the single-column themes),
surfaced in `GET /api/cv/themes` and badged in the Customize tab. Two-column (sidebar) themes are not
flagged, as sidebar layouts can trip naive resume parsers.
- **Print quality**: the renderer emits `break-inside: avoid` on entries, `break-after: avoid` on
section headings, and widow/orphan control, so entries don't split across a page in the Playwright
PDF pass.
- **Print quality**: ordinary entries use `break-inside: avoid-page`; content classified as too tall
for a page is allowed to flow between bullets/paragraphs so Chromium cannot clip an unsplittable
block. Section headings avoid a following break, list items carry widow/orphan rules, and long
names/titles/contact values/URLs/tags wrap within `minmax(0, …)` columns. Typography is not scaled
down to mask overflow.
## Deliberately not here (yet)