Files
gstack/make-pdf/test/fixtures/landscape-gate.md
T
Garry Tan a2c1eae16e test(make-pdf): width-policy unit suite + landscape e2e gate with negative fixtures
24 unit tests weighted toward the false-positive guards: wide screenshot
without an alt hint stays portrait, sub-threshold and tall images stay
portrait, deterministic 1560/1561px boundary, whole-word alt matching
('photographic' must not match 'graph'), page=portrait veto beats every
heuristic, diagnostic blocks never promote. E2E gate asserts pdfinfo
per-page boxes through the compiled binary: exactly 3 of 5 fixture blocks
get landscape pages (alt-hinted image, directive-forced image, wide sequence
diagram) while the unhinted screenshot and the veto'd diagram stay portrait —
plus the --toc combo proving TOC and named-page landscape coexist.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 00:06:46 -07:00

53 lines
1.2 KiB
Markdown

# Landscape Gate
Intro text under the first heading.
## Negative: screenshot stays portrait
![just a screenshot of the app](./diagram-assets/wide-screenshot.png)
## Positive: alt-hinted wide image promotes
![architecture diagram of the system](./diagram-assets/wide-arch.png)
## Positive: directive forces a small image
![small forced](./diagram-assets/red-box.png){page=landscape}
## Positive: wide diagram auto-promotes
```mermaid title="Wide sequence"
sequenceDiagram
participant A as seqalpha
participant B as seqbeta
participant C as seqgamma
participant D as seqdelta
participant E as seqepsilon
participant F as seqzeta
participant G as seqeta
participant H as seqtheta
participant I as seqiota
participant J as seqkappa
A->>J: long hop
B->>I: cross
```
## Negative: directive vetoes a wide diagram
```mermaid page=portrait
sequenceDiagram
participant A as vetoalpha
participant B as vetobeta
participant C as vetogamma
participant D as vetodelta
participant E as vetoepsilon
participant F as vetozeta
participant G as vetoeta
participant H as vetotheta
participant I as vetoiota
participant J as vetokappa
A->>J: long hop
```
Closing text.