Page size. The finished size comes from the TrimBox, or the ArtBox when there is no TrimBox, and is compared with the profile's trim size after rotation, within the profile's tolerance. When pages differ in size, the finding lists each size with its pages.
Trim, crop, and nesting. Every page needs a TrimBox or an ArtBox, the CropBox should match the MediaBox, and the boxes must nest: trim inside bleed inside media. A miss names the pages and the boxes involved.
Bleed. The distance from each trim edge to the bleed edge is measured on all four sides. The finding reports the smallest edge, for example "Bleed is 4 pt on the left edge of page 1; the profile requires 9 pt on every edge." When a file has no BleedBox, bleed is measured to the CropBox or MediaBox and a note says so.
Effective image resolution. For every placed image, including images inside Form XObjects, the app divides the pixels by the placed size in inches on each axis and reports the lower value. Rotated placements are measured along their own edges. A finding reads like "Page 1: DeviceRGB image at 50 ppi (limit 149). 100 × 100 px placed at 144 × 144 pt."
Fonts. Each font is checked for an embedded font file, Type 3 fonts count as embedded, and the finding lists the pages where the font actually draws text. Courier is flagged as a likely missing-font fallback.
Colour. Image colour spaces, named colour resources, and the colour set for fills and strokes are read, so RGB in a CMYK job is found whether it sits in a photo or in a vector shape. The profile's colour policy decides whether it fails, and nothing is converted.
Spot colours. Separation and DeviceN ink names are collected from pages, Form XObjects, and images. The count and the names are compared with the profile, and process inks plus All and None are not counted.
Transparency and output intent. Constant alpha, blend modes, soft masks, and transparency groups are reported per page, with the blend colour space checked against CMYK. A missing or non-CMYK output intent is reported at the severity the profile sets.
Reading the result. Any Error makes the verdict FAIL, any Warning makes it PASS WITH WARNINGS, and Notes add context. The status line under the table carries the SHA-256, the file size, the profile, and the time of the check.