Check catalogue

Every check has a stable code, such as TEX005, that appears in reports and in [checks] select and ignore. Codes are never reused. To read one check’s scope and fix in the terminal, run fledge rule CODE; fledge rules lists all of them.

fledge rules
fledge rule BIB101
fledge rule PDF104 --json

Checks fall into three groups:

  • On by default checks run without configuration: TODO markers, unresolved citations and references, unused bibliography entries and TeX log problems.

  • Opt-in checks need a setting from you, such as a page limit, a required document class or require_embedded_fonts = true. A preset switches on a useful set at once. Fledge never invents a limit.

  • Always-enforced guards keep the prepared copy safe and faithful, for example missing or out-of-project files and PDF preservation. They run whenever their stage runs, and ignoring their code does not switch them off.

A check that did not run, or could not decide, never counts as a pass. The glossary defines the report terms used here.

Families

Family

What it covers

TEX

Source diagnostics, literal manuscript constraints and gaps in the source graph (TEX3xx)

MAN

Manuscript, author, declaration and float checks

BIB

Bibliography structure, citation coverage and metadata; BIB2xx guard bibliography edits

BLD

TeX log problems, overflow tolerance and loaded-package policies

PRV

Identity terms, privacy hints, secrets and shell escape

PKG

Flattening safety, filenames, deliverables, archive size and template files

PDF

Page limits, page size, fonts, text, metadata, artwork and tagged structure

NET

Online DOI, metadata, notice and link checks

CMP, FMT

Preservation comparisons and formatting proposals

RPT

Review decisions and diagnostic exports

Configure checks as described in choose checks. The example files checks.toml and settings.toml show the settings tables.

Catalogue

The tables below are generated from the rule registry. A final regeneration happens whenever a rule changes, so the code list always matches fledge rules.

On by default

These 29 checks run without any configuration whenever the command reaches the evidence they need. Turn one off with [checks] ignore.

Code

Check and scope

Typical fix

TEX001

Unfinished text markers. Find TODO, FIXME, XXX and ?? in active source; comments and literal examples are ignored. Advisory heuristic.

Finish or remove the marked draft text after reviewing its context.

TEX002

Editing commands. Find supported draft/editing commands such as todo in active source. Advisory heuristic.

Resolve the editing note and remove its draft command.

TEX003

Duplicate literal labels. Find repeated literal labels in the selected source graph without expanding TeX macros. Advisory heuristic.

Give distinct objects unique labels and update their references.

TEX004

Unresolved literal references. Find literal references without a matching scanned label. Generated labels may make this inconclusive; advisory heuristic.

Correct the reference key or add the intended label; confirm with a clean build.

TEX008

Ambiguous source dependencies. Report a literal reference that several files could satisfy, and the file TeX’s lookup order selects (build directory, then search paths; default graphics extensions in pdfTeX order). Advisory; flat layout rewrites the selected name.

Confirm the selected file is intended; use an explicit path and extension or remove the unused alternative.

PKG005

Nonportable project file names. Warn once per kept file or empty folder whose path contains a control character, a character from <>:”|?*, a trailing space or dot, or a reserved Windows device name. The file is kept unchanged.

Rename the file to a portable name, or accept that it is awkward on other systems.

BIB003

Repeated bibliography fields. Report repeated fields within an entry instead of selecting or normalizing an arbitrary value.

Keep the intended field value and remove the duplicate field in this entry.

BIB006

Literal DOI syntax. Validate supported literal DOI syntax; macros, concatenation and ambiguous markup are inconclusive. No online resolution is performed.

Check the DOI against the publication and correct its literal bibliography value.

BIB007

Exact duplicate DOI values. Detect exact duplicate normalized literal DOI values without folding case or merging entries.

Review whether the entries describe the same work before merging or changing citations.

BLD001

Undefined citations in build log. Detect TeX’s undefined-citation diagnostics; this does not check whether every bibliography entry is cited.

Correct the citation key or supply its bibliography entry, then rebuild.

BLD002

Undefined references in build log. Detect TeX’s undefined-reference diagnostics after the build.

Correct the reference key or add its intended label, then rebuild.

BLD003

Duplicate labels in build log. Detect multiply-defined label diagnostics emitted by TeX.

Rename duplicate labels and update references to the intended objects.

BLD004

Missing characters in build log. Detect missing-character diagnostics emitted by TeX; no visual glyph recognition is performed.

Use a font/engine supporting the reported character or its intended TeX representation.

BLD005

Font warnings in build log. Detect font substitution and other TeX font warnings.

Use an available font and shape; check the rebuilt PDF for unintended substitution.

BLD006

Overfull boxes in build log. Detect overfull horizontal/vertical boxes and extract reported point overflow; no threshold is assumed.

Inspect the reported box; reflow the text, equation or table within the intended margins.

BLD007

Underfull boxes in build log. Detect underfull horizontal/vertical box warnings emitted by TeX.

Inspect the reported box for poor spacing and adjust its line or page breaks.

TEX315

File-like options of file commands. Report an option of a file command that looks like a path, and a subfiles class compiled as the main root. Their lookup rules are not followed. Advisory about how the reference was written.

Simplify the option so it no longer looks like a file path, or select the parent document.

TEX316

Declared names that contain a directory. Report \ProvidesPackage, \ProvidesClass or \ProvidesFile naming a directory. A flat layout would move the file and change the declared identity. Advisory.

Declare the plain name, or use layout = “preserve” to keep the file in place.

TEX317

Scoped graphics search paths. Report a \graphicspath inside a group or macro definition, which is outside the supported subset. Advisory about how the search path was written.

Declare \graphicspath once, at the top level of the preamble.

TEX318

Non-literal graphics search paths. Report a \graphicspath that is not a literal list of directories such as {{figures/}{plots/}}. Advisory about how the search path was written.

List the directories literally, for example \graphicspath{{figures/}{plots/}}.

TEX319

Graphics search-path syntax. Report a \graphicspath directory that does not end in a slash. The scan does not reinterpret it. Advisory about how the search path was written.

End every \graphicspath directory with a slash.

BIB101

Source citation coverage. Resolve supported literal citation keys against resources declared by the selected root, or each explicitly selected all-root graph. Citation-relevant macro definitions, citations inside conditionals and incomplete bibliographies are inconclusive; this does not replace compilation.

Correct the citation key or declared bibliography resource, then compile to verify the rendered citations. Resolve reported source uncertainty before claiming coverage.

BIB102

Apparently uncited bibliography entries. Find entries unreachable from literal citations, nocite and supported relationships within selected bibliography resources. Explicit all-root scope unions usage across roots; dynamic/filter/set uncertainty prevents a definitive absence claim. All candidates share one finding that lists every entry with its path and line in the details. No entry is removed.

Review each candidate against all intended documents, filters and bibliography backend behavior before considering removal. This check never prunes a bibliography.

BIB105

Bibliography page-range syntax. Check supported numeric and matching-prefix page ranges for malformed or descending endpoints. Single pages and comma-separated ranges are supported; Roman numerals, macros and unfamiliar notations are explicitly inconclusive.

Verify the page endpoints and notation against the cited resource. Do not replace article identifiers or unfamiliar page notation with guessed numeric ranges.

BIB106

Bibliography URL syntax. Validate literal HTTP, HTTPS and FTP URL structure, host, port, whitespace and percent escapes. Other schemes and TeX markup are inconclusive. No request is made and syntax success does not establish reachability.

Correct the URL syntax using the intended resource address, then verify the destination separately if desired. No remote URL was contacted.

TEX009

Generated bibliography shipped with the sources. Default check: the selected document reads a .bib file through BibTeX (\bibliography) or biblatex (\addbibresource), but no generated .bbl with the main file’s name sits beside the main file. Services that compile without running BibTeX or Biber, arXiv among them, then produce empty citations; most other services run the bibliography backend themselves, so by default the missing file is recorded as a not-applicable scope note, listed only with –show-passed and in JSON or HTML reports, and does not change the outcome. Opt-in submission_checks.require_bbl = true (set by the arxiv preset) reports it as a warning.

Only needed when the receiving service does not run BibTeX or Biber: build locally and keep the generated

.bbl next to the main file; prepare retains an existing
.bbl in the package automatically. Biber-generated .bbl files must match the biblatex version of the compiling service. For BibTeX, source_transforms.inline_bibliography (TEX203) can inline the .bbl instead.

TEX010

Packages that must follow hyperref. Default advisory: in the expanded literal preamble, cleveref, hypcap, bookmark, glossaries or glossaries-extra is declared before hyperref. Conditional, grouped and macro-generated declarations and packages loaded inside local style files are not interpreted, so absence of a finding is not proof of correct order.

Move the reported \usepackage after \usepackage{hyperref}. These packages document that requirement: cleveref and hypcap patch hyperref’s reference and anchor commands; bookmark loads hyperref itself, so later hyperref options clash; glossaries and glossaries-extra only create hyperlinks when hyperref is loaded first.

TEX011

EPS/PS figures in a PDF-producing build. Default note: the selected document includes .eps or .ps graphics. pdfLaTeX and LuaLaTeX convert them only through epstopdf, which needs shell escape (disabled in Fledge’s isolated build). arXiv converts EPS itself; other services may not.

Convert the figures to PDF (for example with epstopdf) and include the PDF files, or confirm that the receiving service compiles EPS through latex and dvips.

PRV007

Comments carrying private-note markers. Default advisory over TeX comments in shipped .tex/.ltx/.latex files: reviewer or rebuttal correspondence, distribution restrictions such as ‘do not submit’ or ‘confidential’, ‘note to self’ and ‘NS:’-style notes whose capital letters are the initials of a literal \author name (other acronyms such as ‘MLP:’ are ignored, and so are initials when no literal author name is available). Only locations and marker categories are reported. This narrow scan is separate from the opt-in PRV005 comment policy and does not establish anonymity.

Delete or rewrite the reported comments before submission, or set source_transforms.comment_policy = ‘all’ so the prepared copy omits comments.

Opt-in checks

These 103 checks run only after you supply the setting in the Enabled by column, for example through a preset or your fledge.toml. Online checks also need network permission.

Code

Check and scope

Enabled by

Typical fix

TEX101

Expected document class. Compare the selected document’s literal class declaration with expected_document_class.

expected_document_class

Use the configured document class, or correct the expected class in your settings.

TEX102

Document class options. Check required_class_options and forbidden_class_options in literal class declarations.

required_class_options or forbidden_class_options

Add the missing class options and remove the forbidden options listed above.

TEX103

Forbidden package declarations. Check direct literal package declarations in selected local sources; packages loaded by system classes are outside this scan.

forbidden_packages

Remove or replace the listed forbidden package declarations and rebuild.

TEX104

Required abstract. Require one supported abstract declaration when require_abstract is enabled.

require_abstract

Add a nonempty abstract in a supported abstract declaration.

TEX105

Abstract word count. Apply explicit abstract_min_words/abstract_max_words to a lexical source count, excluding math and citation arguments. Each unresolved macro widens the reported word-count range by one word; only a range wholly inside or outside the limits is decisive.

abstract_min_words or abstract_max_words

Edit the abstract to fit the configured word range, preserving its meaning.

TEX106

Keyword count. Apply keywords_min_count/keywords_max_count to supported keyword declarations with explicit separators.

keywords_min_count or keywords_max_count

Adjust the keyword list to the configured range using explicit separators.

TEX107

Required section headings. Check required_sections against literal headings after normalizing whitespace and case. Headings inside executed conditionals or with unresolved titles are reported as unconfirmed rather than missing; content adequacy is not assessed.

required_sections

Add the required section headings and their content, or correct their spelling.

PDF001

Total PDF page limit. Compare the full page count, including references and appendices, with explicit max_pages.

max_pages

Reduce the document to the configured total page limit, including appendices and references.

PDF101

Expected PDF page dimensions. Compare each page’s reported dimensions in PDF points with expected_page_width_pt/expected_page_height_pt using page_size_tolerance_pt.

expected_page_width_pt or expected_page_height_pt

Set the intended paper dimensions in the source and rebuild the PDF.

PDF102

Consistent PDF page dimensions. Compare the full range of page dimensions using page_size_tolerance_pt when require_consistent_page_size is enabled.

require_consistent_page_size

Make the page sizes consistent, checking imported PDF pages and orientation settings.

PDF103

Minimum effective image resolution. Compare Poppler’s reported x/y raster PPI at embedded scale with explicit min_image_dpi; vector art and figure text are outside this check.

min_image_dpi

Replace the reported raster with a higher-resolution original or reduce its rendered size.

PDF104

Embedded PDF fonts. Require every font reported by pdffonts to be embedded when require_embedded_fonts is enabled.

require_embedded_fonts

Embed the named fonts when exporting figures or building the document, then rebuild.

PDF105

Type 3 PDF fonts. Reject fonts reported as Type 3 when forbid_type3_fonts is enabled; Type 3 does not necessarily mean bitmap.

forbid_type3_fonts

Replace the reported Type 3 fonts with suitable embedded outline fonts and rebuild.

PDF106

PDF encryption. Reject encryption reported by pdfinfo when forbid_encryption is enabled; inaccessible metadata is inconclusive.

forbid_encryption

Export an unencrypted PDF from the source and repeat inspection.

PDF107

PDF forms. Reject forms reported by pdfinfo when forbid_forms is enabled.

forbid_forms

Remove or flatten form fields when exporting the PDF, then inspect it again.

PDF108

PDF JavaScript. Reject JavaScript reported by pdfinfo when forbid_javascript is enabled; this is not exhaustive active-content analysis.

forbid_javascript

Export the document without embedded JavaScript and inspect it again.

PDF109

Embedded PDF attachments. Reject embedded files reported by pdfdetach when forbid_attachments is enabled.

forbid_attachments

Remove embedded file attachments from the exported PDF and inspect it again.

FMT001

Source formatting differences. Report differences from explicitly configured tex-fmt output without modifying the original project.

apply_formatting

Review the formatting diff; use prepare –format to apply it to a separate verified copy.

BIB103

Configured bibliography fields. Check user-supplied entry-type field requirements, including explicit alternatives such as author|editor. No publisher schema is assumed. Missing required fields fail; macros, unresolved inheritance and incomplete coverage are blocking inconclusive results. Include doi here to require DOI presence.

required_fields in bibliography_checks

Supply or verify the configured metadata fields for this entry type. Preserve intentional inheritance and confirm that the requirements suit the cited resource.

BIB104

Requested DOI presence. When DOI entry types are explicitly configured, report absent or empty DOI fields as advisory. Macros and inheritance are inconclusive; absence is not proof that a DOI exists, and syntax or identity is not verified by this presence check.

doi_entry_types in bibliography_checks

Check whether this resource has a DOI and verify its identity before adding it. References without DOIs can be legitimate.

BIB107

Possible title capitalization loss. When explicitly enabled, flag unprotected uppercase or mixed-case title tokens as a style-dependent advisory. Existing braces are retained; macros are inconclusive and no capitalization is changed.

check_capitalization in bibliography_checks

Inspect the rendered title under the selected bibliography style. Add protection only for case-sensitive names or terms whose capitalization should survive that style.

BIB108

Possible duplicate bibliography works. When explicitly enabled, compare bounded literal titles at the configured similarity threshold within matching normalized author/year groups. Candidates are heuristic, separate from exact DOI identity, and never merged. Missing metadata, macros and comparison limits are inconclusive.

check_fuzzy_duplicates in bibliography_checks

Compare the candidate works, versions, identifiers and metadata manually. Similar titles do not authorize merging, replacing a preprint, or renaming citation keys.

BLD101

Configured overfull-box tolerance. Compare numerical final-log box overflow with an explicit tolerance in TeX points; incomplete build/log evidence cannot pass.

overfull_tolerance_pt in build_checks

Reflow the reported content or correct the explicit tolerance, then rebuild.

BLD102

Recorder-observed package policy. Apply explicit allow/deny/required sets to transitive .sty and .cls inputs observed by the build recorder.

allowed_loaded_packages or forbidden_loaded_packages or required_loaded_packages in build_checks

Review all loaded class/package filenames, replace forbidden dependencies, or update the explicit policy.

BLD103

Minimum declared package date. Compare a loaded package’s bounded literal ProvidesClass/ProvidesPackage header date to an author-specified minimum; this is not authenticity verification.

minimum_package_dates in build_checks

Supply the intended compatible class/package release, or update the explicit minimum date after review.

BLD104

Existing local package shadow. Look up a system counterpart from an empty sandboxed workspace for each loaded local class/package; report intentional-override candidates as advisories.

check_local_package_shadows in build_checks

Compare the local class/package with the intended template or toolchain and retain overrides only when deliberate.

BLD105

Local TeX distribution release. Record the TeX distribution named by the baseline build’s single engine version probe (for example TeX Live 2026) as information. Opt-in build_checks.expected_texlive_year turns a different or unidentified release into a warning; missing version evidence is inconclusive, never a pass.

expected_texlive_year in build_checks

Build with the TeX Live release the receiving service documents (arXiv lists its current one), or correct expected_texlive_year; rerun after changing toolchains.

BLD301

Actual loaded class and package option inventory. Collect bounded post-document normalized/raw kernel option lists and global class options from a line-neutral disposable-build hook. Require fresh complete markers, a successful build, and exact recorder agreement for package origins. Effective defaults and later package setup commands are outside this inventory.

inventory_loaded_options in build_checks

Use a supported LaTeX kernel/class with complete instrumentation and recorder evidence, then rebuild; inspect defaults and post-load setup separately.

MAN001

Allowed direct package declarations. Compare direct literal declarations in the selected local graph with an explicit allowlist; system transitive packages are outside scope. Only constructs that could build or conditionally execute a declaration make the inventory inconclusive, and a conditional declaration is never reported as a violation.

allowed_packages in manuscript_checks

Remove or replace the disallowed direct package declaration, or update the explicit allowlist after reviewing the requirement.

MAN002

Layout override candidates. Advisory scan for literal negative spacing, page breaks, shrinking, forced placement and layout length overrides; intent is not inferred.

check_layout_manipulation in manuscript_checks

Review the reported layout override in the compiled document and retain it only when intended and permitted by your requirements.

MAN003

Abstract citation policy. Apply an explicitly enabled no-citation policy to supported citation commands in literal abstracts.

forbid_abstract_citations in manuscript_checks

Review the abstract citation against the explicitly selected policy and revise it manually if needed.

MAN004

Abstract abbreviation candidates. Apply a selected forbid/define policy heuristically to uppercase tokens; definition candidates use expanded words followed by an abbreviation in parentheses.

abstract_abbreviation_policy or abstract_abbreviation_exceptions in manuscript_checks

Review the candidate abbreviation, add its definition if required, or add an intentional exception to the explicit policy.

MAN005

Maximum literal heading depth. Compare supported literal heading commands with a user-supplied maximum depth; section has depth one.

max_heading_depth in manuscript_checks

Review headings deeper than the configured limit and reorganize them manually if the limit applies.

MAN006

Apparently empty sections. Advisory lexical scan for headings whose section subtree has no observable content. Unexpanded constructs inside a section make only that section inconclusive; bibliography and layout commands count as zero content.

check_empty_sections in manuscript_checks

Review the apparently empty section in the compiled manuscript and add content or remove its heading if appropriate.

MAN007

Hard-coded reference candidates. Advisory scan for prose such as Figure 2, Table 3, Section 4 or Equation (5); literal examples and command arguments are excluded.

check_hardcoded_references in manuscript_checks

Review the numbered reference and use a label/reference command when it refers to a manuscript object.

MAN008

Required literal author metadata. Require nonempty explicitly selected title, author, affiliation, email and corresponding-author declarations in supported source commands; no identity or per-author completeness claim.

required_metadata in manuscript_checks

Supply the configured metadata using a supported literal command, or inspect the template-specific metadata manually.

MAN009

Literal ORCID syntax and checksum. Validate literal identifiers in orcid, ORCID and orcidlink commands with the ISO 7064 MOD 11-2 checksum; validity does not establish ownership.

check_orcid in manuscript_checks

Correct the reported ORCID from the author’s verified identifier; a valid checksum alone does not establish identity or ownership.

MAN010

Nonempty required declarations. Require literal content under user-named headings or declaration{name}{body} commands; statement adequacy and applicability require human review.

required_declarations in manuscript_checks

Supply a nonempty statement for the configured declaration and review its applicability and adequacy manually.

MAN011

Required figure and table captions. Require nonempty literal caption commands in supported figure/table environments, including starred environments and certain literal input boundaries. A float whose own region could not be interpreted is reported as inconclusive without hiding the floats that were confirmed.

require_float_captions in manuscript_checks

Add a nonempty caption to the reported figure or table, or review unsupported template-generated captions manually.

MAN012

Required figure and table labels. Require a nonempty literal label associated with each supported figure/table environment.

require_float_labels in manuscript_checks

Add an unambiguous literal label to the reported figure or table, normally after its caption.

MAN013

Figure and table label placement. Check that literal float labels follow a caption in source order; custom counter changes and subfloat semantics are inconclusive.

check_float_label_order in manuscript_checks

Place the figure/table label after the corresponding caption and verify its resolved number after compilation.

MAN014

Figure and table references. Require an external supported literal reference to each labeled figure/table; generated references and unsupported float structures are inconclusive.

require_float_references in manuscript_checks

Add a meaningful reference to the figure or table in the manuscript, or review unsupported generated references manually.

MAN015

Figure and table first-reference source order. Compare first literal reference order separately for figures and tables with their source appearance; this does not infer rendered float order.

check_float_reference_order in manuscript_checks

Review figure/table introductions in source order and the compiled document; float placement may differ from source order.

MAN016

Required figure descriptions. Require nonempty literal Description commands for figures and flag obvious placeholder text; presence does not establish description quality or PDF accessibility.

require_figure_descriptions in manuscript_checks

Add a useful nonempty Description for the figure and manually assess whether it conveys the information needed by readers.

MAN017

Required or forbidden review line numbers. Opt-in (require_line_numbers or forbid_line_numbers): find literal lineno activation, meaning \linenumbers and its running/pagewise variants or environments, the lineno linenumbers option, or a lineno/linenumbers class option. Class-specific review modes and macro-generated activation are not interpreted; conditional activation is inconclusive.

require_line_numbers or forbid_line_numbers in manuscript_checks

For review copies, load lineno and call \linenumbers (or use the class option the venue documents); for final versions, remove the activation. If the class numbers lines through another option, confirm it in the PDF and suppress this finding.

PRV103

Configured identity terms in image metadata. Scan supported PNG text/EXIF and pre-scan JPEG EXIF/XMP/extended XMP/IPTC IIM application records/comments for explicit literal identity terms with bounded parsing and decompression. Vendor blocks such as the EXIF MakerNote are listed as limitations instead of making the scan unusable. No OCR, pixel scan, image rewriting or general anonymity guarantee.

image_identity_terms in metadata_privacy

Review the named image metadata fields privately and explicitly re-export or sanitize the image when those values should not be shared.

NET001

DOI resolution. Resolve explicitly selected literal DOIs through doi.org; distinguish missing, restricted and unavailable responses from successful resolution.

online_doi_resolution in online_checks

Check the DOI and retry unavailable services; a resolving DOI alone does not verify the cited work.

NET002

Remote bibliography metadata agreement. Compare supported literal title, author, year and venue fields with Crossref DOI metadata; report differences as reviewable evidence, not automatic corrections.

online_metadata in online_checks

Review local and provider metadata against the cited version; do not replace fields automatically.

NET003

Missing DOI candidates. Search Crossref using an explicitly shared literal bibliography title and rank reviewable DOI candidates; no match and ambiguity remain distinct.

online_missing_doi in online_checks

Inspect each candidate’s title, authors and year before adding a DOI; a missing candidate is not proof that no DOI exists.

NET004

Published versions of preprints. Surface Crossref published-version relations or title-search candidates for explicitly identified preprints; never infer that similar titles establish the same work.

online_published_versions in online_checks

Review the relation and cited version before changing the reference; retain the preprint when appropriate.

NET005

Correction and retraction notices. Surface Crossref update metadata and related notice records, keeping corrections and retractions separate and provider coverage explicit.

online_notices in online_checks

Read the attributed notice and assess its relevance; absence of Crossref update metadata is not proof that no notice exists.

NET006

Reference URL health. Check explicitly selected literal bibliography URLs with bounded public-network requests; redirects, authentication, throttling and unavailable resources are distinct outcomes.

online_reference_links in online_checks

Review broken links and retry restricted or temporarily unavailable resources without exposing credentials.

NET007

Replication and source-link health. Check explicitly supplied replication URLs and literal URL commands in the selected source graph; HTTP availability does not establish reproducibility or artifact completeness.

online_replication_links in online_checks

Review artifact destinations and access requirements, then verify their contents and reproducibility separately.

PDF201

Section page budgets. Compare explicitly supplied inclusive page ranges with user-supplied section budgets; ranges outside the actual document are inconclusive.

section_budgets in pdf_checks

Review the named section’s content or correct its explicit page range and budget.

PDF202

Reported rendered text size. Compare Poppler text sizes with global or explicitly located regional minima. Integer rounding, absent text, unsupported rotation/crop and partial regions remain inconclusive. Raster/outlined text and semantic categories are not inferred.

min_text_size_pt or text_size_regions in pdf_checks

Increase the reported text size in the listed region and inspect the page.

PDF203

Printable text bounds. Compare extractable text boxes with supplied margins or allowed regions. Advisory; image bounds, clipping paths, rotated/cropped pages and semantic object attribution are outside this adapter’s measured scope.

printable_margins_pt or printable_regions in pdf_checks

Inspect the listed text boxes and adjust layout or explicitly allowed regions.

PDF204

Text overlap candidates. Measure pairwise extractable-text rectangle intersections against an explicit area ratio; legitimate mathematical overlays may be reported. Advisory.

overlap_min_area_ratio in pdf_checks

Inspect the listed box intersections and repair unintended overlap.

PDF205

Sparse rendered page candidates. Compare bounded grayscale pixel coverage with an explicit minimum and background assumption. Exempt pages are supplied explicitly; intended blank pages and scan-only pages are not inferred. Advisory.

min_page_ink_ratio or sparse_page_exemptions in pdf_checks

Review possible spillover/blank pages or record intended page exemptions.

PDF206

Required PDF metadata. Require nonempty user-selected pdfinfo text properties. Presence does not establish rights, identity or semantic correctness.

required_metadata in pdf_checks

Supply the required nonempty PDF properties in the document’s export settings.

PDF207

Expected PDF metadata agreement. Compare properties with supplied expected values using whitespace-only normalization. Source expansion, identity and author order equivalence are not inferred.

match_source_pdf_metadata in pdf_checks

Reconcile the listed PDF properties with the supplied expected metadata.

PDF208

PDF tagging presence. Require pdfinfo to report tagging present; this is not a reading-order, table/link structure, PDF/UA or general accessibility validation.

require_tagged in pdf_checks

Enable supported tagged-PDF output and review its semantic structure separately.

PDF209

PDF language declaration. Inspect qpdf’s resolved catalog language for required presence or an explicit expected language tag; unsupported encoding or missing qpdf is inconclusive.

require_language or expected_language in pdf_checks

Set the document’s catalog language to the appropriate configured language tag.

PDF210

PDF annotation type policy. Inspect resolved page annotation objects for explicitly forbidden subtypes, including indirect objects. Missing/incomplete qpdf evidence is inconclusive.

forbidden_annotation_types in pdf_checks

Remove or convert the forbidden annotation types in a separate submission copy.

PDF211

PDF action-name candidates. Scan resolved reachable dictionaries for explicitly forbidden /S names. Advisory action candidates; opaque streams and orphan objects are excluded, and no malware-free guarantee is made.

forbidden_action_types in pdf_checks

Review the matched action types and remove disallowed active behavior from a copy.

PDF212

Included PDF figure fonts. Inspect explicitly supplied input PDFs for configured embedding and Type 3 policies. A figure with no font resources has nothing to embed and passes; final-PDF attribution and bitmap Type 3 glyph classification are not established.

require_embedded_figure_fonts or forbid_type3_figure_fonts in pdf_checks

Re-export the named input PDF figure with the required font policy.

PDF213

Transformed PDF stroke width. Compare MuPDF trace stroke widths after uniform placement transforms with an explicit minimum. Hairlines/nonuniform transforms, raster lines and filled outlines are unmeasured; candidates remain advisory.

min_stroke_width_pt in pdf_checks

Inspect listed thin strokes and increase their width at the final placement scale.

PDF214

Rendering color-space policy. Compare MuPDF trace rendering color-space names with an explicit allowed list. Source encoding, color-only meaning and perceptual accessibility are not inferred.

allowed_color_spaces in pdf_checks

Review disallowed rendering color spaces and export with the supplied policy.

PDF215

Text contrast against supplied background. Compare opaque trace text colors against an explicitly supplied uniform background, treating DeviceRGB/Gray as sRGB. Actual backgrounds, raster text and compositing are not established; the comparison is advisory.

min_text_contrast or contrast_background_rgb in pdf_checks

Review the named colors against the actual background and improve their contrast.

PDF216

Grayscale color separation candidates. Compare nominal sRGB luminance for distinct opaque DeviceRGB/Gray colors on each page against a supplied difference. Advisory; color-only meaning, proximity, raster palettes, compositing and perceptual accessibility are not inferred.

min_grayscale_luminance_difference in pdf_checks

Inspect the listed color pairs and add luminance, pattern or label distinctions.

PRV001

Configured source identity terms. Scan configured literal identity terms in bundle text, comments, URLs and filenames. Case-insensitive whole-word matches (set identity_term_matching to substring to match inside words) do not establish anonymity.

identity_terms in submission_checks

Review the reported locations against the intended anonymity policy.

PRV002

Configured PDF identity terms. Scan extracted PDF text and supplied metadata for configured literal identity terms using the same whole-word or substring matching as source files; unavailable extraction is inconclusive.

identity_terms in submission_checks

Review the PDF text and metadata before submission, then regenerate the PDF.

PRV003

Possible identifying language. Optionally flag acknowledgement declarations and literal self-identifying phrases in active source as advisory hints.

scan_identity_hints in submission_checks

Review these heuristic hints in context; do not rewrite self-citations blindly.

PRV004

Possible credentials. Optionally detect bounded credential-shaped tokens, private-key headers and secret assignments in local text, filenames and PDF metadata. Candidate values are redacted; absence is not proof of safety.

scan_secrets in submission_checks

Inspect the indicated location privately; remove unintended credentials and rotate any credential that has been exposed.

PRV005

Private comments and unfinished notes. Optionally scan TeX comments for unfinished markers and private-note phrases without changing licensing, directives or meaningful comments.

scan_private_comments in submission_checks

Review flagged comments and remove only material that should not be submitted.

PRV006

Literal shell-execution preflight. Optionally flag supported literal write18 and shell-execution constructs in active source. This advisory scan does not replace runtime isolation.

check_shell_escape in submission_checks

Review whether the dependency can be prepared without shell escape; keep the runtime sandbox and shell-escape prohibition enabled.

PKG101

Configured filename length. Apply an explicit maximum Unicode-character length to each file basename in the supplied bundle.

filename_max_length in submission_checks

Rename affected files in an explicit copy and update their references.

PKG102

Configured filename characters. Apply a user-supplied literal allowed-character set to file basenames; this is separate from archive path-safety checks.

filename_allowed_characters in submission_checks

Use filenames accepted by the explicit character policy and update references.

PKG103

Configured bundle file types. Compare case-insensitive final filename extensions with an explicit allowlist; an extension does not establish the actual file format.

allowed_extensions in submission_checks

Review disallowed file types and retain all required build dependencies.

PKG104

Explicit required deliverables. Require configured relative paths and check their declared kind using regular-file, PDF/ZIP signature or UTF-8-text evidence. Presence does not establish separate delivery or successful compilation.

required_deliverables in submission_checks

Supply each required file at its configured path and verify its intended format.

PKG105

Compressed archive size. Compare the actual final archive’s byte length with a separate explicit compressed-size limit without extracting it.

max_archive_bytes in submission_checks

Reduce the final archive within the configured limit while preserving dependencies.

PKG106

Assets outside the selected dependency graph. Optionally list supported asset files not observed in the selected literal dependency graph. Dynamic, missing or ambiguous dependencies make this inconclusive; candidates are never deletion recommendations.

report_unused_assets in submission_checks

Review candidates against every intended document and build recorder before excluding any asset from an explicit copy.

PKG107

Author-supplied template references. Compare explicit project/reference file pairs byte-for-byte and report whether supported ProvidesClass/ProvidesPackage version declarations agree. No registry, official-status or age inference is made.

template_references in submission_checks

Review differences against the supplied reference and confirm intended template modifications and version compatibility.

BIB109

Shipped .bbl covers cited keys. Opt-in (submission_checks.check_bbl_coverage): compare literal citation keys in the selected source graph with \bibitem (BibTeX) or \entry/\keyalias (biblatex) keys in the shipped

.bbl. \nocite{*} additions and entry content are not checked; dynamic citations are inconclusive. Without a shipped
.bbl the coverage is an inconclusive warning that defers to TEX009.

check_bbl_coverage in submission_checks

Rebuild the bibliography after the last citation change and ship the regenerated

.bbl, or correct the reported citation keys.

BIB110

Shipped biblatex .bbl matches the target format. Opt-in (submission_checks.biblatex_bbl_format_version): compare the format version on the second line of a shipped biblatex

.bbl, such as ‘% $ biblatex bbl format version 3.3 $’, with the version used by the service that compiles the upload without running Biber, arXiv among them. biblatex there reports a wrong format version for any other value. BibTeX .bbl files and documents without a literal .bib resource are not applicable; without a shipped
.bbl the result is an inconclusive warning that defers to TEX009. Only the header is compared, not the entries.

biblatex_bbl_format_version in submission_checks

Build with the biblatex release of the target service’s TeX Live (its instructions name the release; TeX Live 2026 writes format 3.3), then ship the regenerated

.bbl. Otherwise, choose a service or backend that runs Biber.

MAN201

Configured per-author field completeness. Check each sequential literal preamble author record against user-selected associated commands; shared fields and template semantics are not inferred. A record enclosed by primitive conditional control flow is inconclusive.

required_author_fields in structure_checks

Add each missing field command named in the message after that author’s opening command and before the next author’s, or review unsupported template structures manually.

PDF401

Explicit rendered heading expectations. Find user-supplied heading title and number text on explicit PDF pages after whitespace normalization; section and appendix numbering semantics are not inferred.

heading_expectations in structure_checks

Inspect the specified PDF page, correct the heading or explicit expectation, and review ambiguous extraction manually.

PDF402

Tagged table row and cell structure. Inspect declared Table, row-group, TR, TH and TD relationships. Untagged visual tables, meaningful headers, cell spans and PDF/UA conformance remain unverified.

check_table_structure in structure_checks

Correct the table tagging hierarchy in the authoring tool and manually verify header associations and reading order.

PDF403

Link tag and annotation associations. Match Link structure elements to page Link annotations and inspect supported target presence; accessible-name adequacy, navigation and remote target availability are not established.

check_link_structure in structure_checks

Repair Link tags, object references and annotation targets, then manually verify link text and navigation.

PDF404

Nonempty tagged Figure alternative text. Require nonempty supported Alt strings on declared Figure elements. This does not find every visible image or judge description quality.

require_figure_alt in structure_checks

Supply appropriate Figure alternative text in the authoring source and inspect its adequacy manually.

PDF405

Structure tree and marked-content reference integrity. Inspect an explicitly required structure tree, parent links, duplicate or invalid MCIDs and parent-tree backlinks. Stream coverage, natural reading order and accessibility conformance remain unverified.

require_structure_tree or check_structure_references in structure_checks

Repair the reported structure references in the authoring/tagging tool and manually assess reading order and accessibility.

PDF301

Printed crop/registration-mark candidates. Locate paired short strokes aligned with explicit trim corners; also identify crossed registration strokes. Raster/outlined marks remain unmeasured.

detect_printer_marks or trim_regions or printer_mark_max_length_pt or printer_mark_exemptions in rendered_pdf_artwork or included_figure_artwork

Remove unintended marks or exempt intentionally marked pages after review.

PDF302

Figure outer whitespace. Measure the area outside a bounded rendered ink box in an explicit region against a supplied ratio/background. Input PDF figures may use their whole page.

max_figure_whitespace_ratio in rendered_pdf_artwork or included_figure_artwork

Tighten unintended padding or revise the region/background/threshold.

PDF303

Figure boundary ink candidates. Locate rendered ink in a supplied boundary band; touching ink can be an intentional border and never proves clipping. Unsupported page frames are inconclusive.

figure_edge_band_pt in rendered_pdf_artwork or included_figure_artwork

Inspect the figure boundary and repair unintended clipping or correct its region.

PDF304

Image and polygon drawing bounds. Compare affine image and straight filled-path bounds after rectangular clipping with allowed regions. Text, curves, strokes and masks remain unmeasured.

drawing_regions in rendered_pdf_artwork or included_figure_artwork

Adjust the listed drawing placements or the explicitly allowed drawing regions.

PDF305

Rectangular clipping candidates. Locate image/polygon extents crossing the page or active supported rectangular clip; intentional cropping remains a review decision.

check_clipping in rendered_pdf_artwork or included_figure_artwork

Inspect each clip crossing and correct unintended cropping in the source artwork.

PDF306

Observed artwork composition. Inventory traced raster, vector or mixed operations for a selected PDF; text/backgrounds count, and unsupported compositing or empty evidence is inconclusive.

classify_artwork in rendered_pdf_artwork or included_figure_artwork

Review the observed composition or obtain complete supported trace evidence.

PDF307

Explicit artwork-category DPI. Apply a supplied category threshold to each raster placement, including axes and the coarsest sampling direction under shear. Categories are never inferred.

artwork_category or category_min_dpi in rendered_pdf_artwork or included_figure_artwork

Increase image resolution, reduce placement scale, or correct its category.

PDF308

Type 3 glyph painting classification. Distinguish image/vector painting in reachable declared Type 3 programs and Form XObjects, with an optional bitmap policy; opaque programs are inconclusive.

classify_type3_glyphs or forbid_bitmap_type3_glyphs in rendered_pdf_artwork or included_figure_artwork

Re-export bitmap glyphs as scalable fonts or outlines when the policy requires it.

PDF309

Affine stroke-normal thickness. Measure straight-segment normal thickness after nonuniform affine transforms. Curves/text need uniform transforms; hairlines, caps and joins are excluded.

min_stroke_width_pt in rendered_pdf_artwork or included_figure_artwork

Increase the listed stroke widths at their final placement and inspect joins/caps.

PDF310

Raster-dominated region candidates. Measure union coverage of axis-aligned raster placements in explicit regions. High coverage without page text is a scan/table candidate, not a diagnosis.

raster_regions or min_raster_region_coverage in rendered_pdf_artwork or included_figure_artwork

Inspect the selected region and provide vector or searchable output as needed.

PDF311

Grayscale review preview. Retain validated, bounded grayscale page previews in the inspection workspace. Preview creation does not establish semantic color independence.

grayscale_preview in rendered_pdf_artwork or included_figure_artwork

Resolve the renderer limitation and inspect the regenerated grayscale preview.

PDF312

Rendered foreground/background sample contrast. Compare composited RGB pixels from explicit foreground/background patches. Patches must be homogeneous unless a channel-spread tolerance is supplied. Conservative luminance bounds preserve threshold uncertainty; text semantics are not inferred.

contrast_samples in rendered_pdf_artwork or included_figure_artwork

Adjust foreground/background colors or supply valid homogeneous sample patches.

PDF313

Required figure colour space. Opt-in required_color_space (‘rgb’ or ‘cmyk’): classify MuPDF trace colour-space names in each included PDF figure (included_figure_artwork) or the whole PDF (rendered_pdf_artwork), and PNG/JPEG figure headers in the selected source graph. Grayscale satisfies either family; unclassified spaces and missing tools are inconclusive. In the source-graph header check, PDF, EPS and PS figures are not applicable, not inconclusive: PDF figures are measured by the trace, and EPS and PS figures are vector formats that are not measured.

required_color_space in rendered_pdf_artwork or included_figure_artwork

Re-export the reported figures in the required colour space (grayscale is accepted for either), or correct required_color_space.

Always enforced

These 72 guards protect reading, transforming, building and publishing the prepared copy, and report what Fledge could not read or follow. They apply whenever their stage runs, and ignoring their code does not switch them off.

Code

Check and scope

Typical fix

TEX005

Missing source dependencies. Detect absent files named by supported literal source commands.

Include the missing dependency or correct the literal file path.

TEX006

External source paths. Reject absolute paths and literal file references escaping the imported project.

Copy the dependency into the project and use a project-relative path.

TEX007

Dependency filename case. Detect case mismatches without guessing which file a case-sensitive submission system will load.

Make the reference match the filename’s exact letter case.

PKG001

Colliding protected filenames. Block flattening when class, style, bibliography or root filenames cannot retain their required identities.

Keep the hierarchy, or resolve colliding protected filenames in the source project.

PKG002

Nonportable protected filenames. Block flattening when sanitizing a protected filename would change its naming contract.

Keep the hierarchy, or explicitly rename the protected file and its references.

PKG003

Relocation shadows a system file. Block flattening when relocating a local class/style would shadow a previously external dependency.

Keep the hierarchy, or resolve the local class/style name that would shadow a system file.

PKG004

Broken companion filename relationships. Block flattening that would break supported generated/sidecar filename relationships.

Keep the hierarchy, or rename the companion files and their references together.

BIB001

Bibliography syntax. Detect incomplete or malformed entries using the bounded local BibTeX scanner; do not partially normalize damaged files.

Repair the indicated entry syntax before applying bibliography transformations.

BIB002

Duplicate citation keys. Report duplicate bibliography keys and conflicting fields without merging entries.

Review conflicting entries, choose distinct keys, and update affected citations.

BIB004

Undefined bibliography string macros. Check string macros against local definitions, built-in month names and the macros of the named bibliography style (the journal macros of the standard styles, and the MACRO definitions of a project-shipped .bst file); incomplete parse coverage is inconclusive.

Define the missing string macro or replace it with the intended literal text.

BIB005

Bibliography relationship targets. Resolve supported cross-reference relationships locally; dynamic or incompletely parsed targets are inconclusive.

Add the missing parent entry or correct the relationship target key.

BIB008

Unreadable bibliography files. Report a .bib file that is a symbolic link, cannot be read, is not UTF-8 or exceeds the bibliography size limit. It is neither inspected nor normalized, so the checks over its entries are incomplete.

Make the file readable, save it as UTF-8 and keep it within the size limit, or supply the actual file instead of a link.

BIB009

Bibliography checks incomplete after a source error. Replace the inconclusive bibliography checks whose only cause is a source error reported elsewhere, such as a missing file or an ambiguous main file, with one note that lists them, instead of repeating the cause once per check.

Fix the reported source error; these bibliography checks then run in full.

BLD008

Unresolved rebuild requests. Block success when the final build log still requests a rerun.

Resolve the remaining reference/bibliography rerun request and rebuild to convergence.

BLD009

TeX errors in build log. Detect explicit TeX error, fatal-error and emergency-stop diagnostics.

Fix the reported TeX error and repeat the clean build.

BLD010

Undeclared external build inputs. Report a file outside the project and the declared TeX trees that the build recorder shows the TeX run read. The build is not reproducible from the project alone, so it does not succeed.

Copy the file into the project and refer to it by a project-relative path, or remove the dependency, then rebuild.

CMP001

PDF comparison page count. Compare the number of pages in the two supplied PDFs.

Check the selected source/PDF versions and explain or correct the differing page count.

CMP002

PDF comparison extracted text. Compare per-page Poppler text extraction; this is not proof of semantic equivalence.

Inspect changed pages and restore the intended text before publishing the bundle.

CMP003

PDF comparison rendered pages. Compare exact RGB renders at 144 DPI within bounded page/pixel limits; smaller details may escape detection.

Inspect changed pages and correct unintended visual differences before publishing.

FMT002

Formatter idempotence. Reject a formatting proposal when a second tex-fmt pass changes it again.

Inspect the unstable formatter output or change formatter settings/version before retrying.

TEX301

Unreadable or non-UTF-8 source. Report a project source that could not be read or is not valid UTF-8. The file is neither scanned nor changed, so its commands and references are unknown and the checks that depend on them are incomplete.

Make the file readable and convert an explicit copy to UTF-8, then repeat the check.

TEX302

Source size limit. Report source parsing that exceeded the per-file or total size limit. Files beyond the limit are not read, so the checks that depend on them are incomplete.

Reduce the selected source set or inspect the large file separately.

TEX303

Symbolic-link sources. Report a source file that is a symbolic link. Links are outside the supported source subset: they are not read, followed or rewritten, and the checks that depend on the file are incomplete.

Supply the actual project file inside the project instead of a link.

TEX304

TeX command count limit. Report a file, or the selected sources together, with more TeX commands than the scan examines. Nothing past the limit is inspected, so the checks that depend on it are incomplete.

Split the file or reduce the selected source set.

TEX305

Command argument limit. Report a brace group that is never closed, a command argument longer than the scan allows, or arguments that together exceed the supported size. The rest of the file cannot be read reliably, so its commands are not inspected.

Close the brace group, or move long text out of the command argument, for example into its own file.

TEX306

Unclosed literal region. Report a verbatim-like region, such as a verbatim environment or a \verb delimiter, that has no closing delimiter. Later commands cannot be inspected reliably, so the checks that depend on them are incomplete.

Close the literal region or remove the stray delimiter.

TEX307

Non-literal file paths. Report a file command without a supported literal filename argument, such as a path built from a macro. The file cannot be followed, packaged or rewritten, so the checks that depend on it are incomplete.

Use a plain literal filename in the file command.

TEX308

Comments or literal commands inside a path. Report a file command whose path argument contains a comment or a literal command such as \verb. The scan cannot tell which text names the file.

Use a plain filename argument without comments or literal commands.

TEX309

File commands inside groups or macro arguments. Report a file command inside a group or macro argument. Its execution context is not established, so the scan does not follow the reference.

Use a direct literal reference outside groups and macro arguments.

TEX310

Conditional file references. Report a file reference inside TeX conditional control flow. The static scan does not establish which branch executes. Toolchain classes and packages that the recorded build covers are not reported.

Make the dependency unconditional so it can be followed; with layout = “preserve” the files the build read are shipped anyway.

TEX311

Unknown commands with file-like arguments. Report an unrecognized command whose argument looks like a project file path. Its lookup semantics are unknown, so the file cannot be followed or rewritten.

Name the file with a supported command such as \input or \includegraphics.

TEX312

Commands that read files at run time. Report commands such as \IfFileExists or \directlua, and font commands without an explicit local font file, whose paths or lookups fall outside the supported literal subset.

Replace the command with a literal file reference the scan can follow.

TEX313

Unsupported subfile structure. Report a subfile that lacks one literal subfiles class and document environment or an explicit parent path naming the selected main file, and the subfiles v1 preamble mode. Their content is not interpreted.

Give the subfile one literal subfiles class option naming the main file, or select the parent document.

TEX314

Unsupported font options. Report a font command whose options contain masked text, select additional faces or dynamic filenames, or give a Path that is not a single literal directory. Only Path, Ligatures, Scale, Renderer and Numbers are followed.

Use only the supported options and one literal Path directory ending in a slash.

TEX320

Cyclic source inputs. Report a source file that is read again while it is being read. Execution order is not established, so the cycle is not followed.

Remove the circular \input or \include.

TEX321

Source input depth limit. Report a chain of inputs deeper than the bounded traversal depth. Files below the limit are not inspected.

Reduce the nesting of \input and \include.

TEX322

Dependency traversal budget. Report a source graph whose traversal exceeded its bounded command budget. The commands after the limit are not followed.

Reduce the selected source set or split the project.

TEX323

References that depend on the reading directory. Report one reference that selects different files when it is read under different path contexts, for example a file input from two directories.

Give the file a name that resolves to the same file from every directory that reads it.

TEX324

No single main file selected. Report an input in which no single main file could be selected: several files declare a document class, or none does. Fledge does not pick one.

Name the main file with –main (or the main setting).

TEX325

Several document roots in the source analysis. Report that source analysis found several document roots and was given no main file. Where the workflow has already reported the choice as TEX324, this repeat is omitted.

Select the main file explicitly with –main (or the main setting).

TEX326

No document root in the source analysis. Report that source analysis found no file with a literal document class and was given no main file. Where the workflow has already reported the choice as TEX324, this repeat is omitted.

Select the main file explicitly with –main (or the main setting).

TEX327

Invalid main file. Report a main file that is absolute, leaves the project folder or names no project file. The path is never read outside the project.

Give the main file relative to the project folder, for example –main paper/main.tex.

PKG006

Source constructs a flat layout cannot move. A flat package needs every file reference followed and rewritten. Report each gap in the source graph as a blocking flat-layout error; the original rule is in details.source_rule.

Resolve the construct the finding names, or set layout = “preserve”.

PKG007

One document root per flat package. Report a flat package that would also contain other document roots. They cannot share the top level with the selected document.

Select only this document and its dependencies.

PKG008

Unvisited sources with file references. Report a source file that no input reaches but whose file commands name other files. Its compilation context is unknown, so a flat layout cannot place them.

Declare a literal input for the file, exclude it from the package, or set layout = “preserve”.

PRV101

Explicit source metadata sanitization. Plan user-selected literal metadata replacements in copied TeX source only when the unique field matches its exact expected-before value. Generated, ambiguous and unsupported declarations block the proposal, as does conditional control flow that encloses a selected declaration.

Review the literal field and expected old value, then rebuild the edited copy and recheck its final PDF metadata.

PRV102

Rebuilt PDF metadata after sanitization. Check selected hypersetup replacements against final reported PDF properties and search those properties for removed literal source values. Missing metadata evidence remains inconclusive; binary objects and anonymity are not verified.

Remove remaining configured values or correct the selected properties in the source, rebuild, and repeat final-PDF inspection.

NET008

Data shared with online services. State what leaves the machine when online checks run: DOI identifiers, URL destinations and bibliography titles go to DOI and Crossref services and to the selected public hosts. No bibliography or manuscript file is uploaded. Online checks are off unless requested.

Check that sharing these fields is acceptable before using –online; otherwise leave online checks off.

PKG301

Independent document packages. Verify every explicitly selected document independently and release all packages only when every required check and archive rebuild succeeds.

Correct the failed document or its explicit file selection and repeat preparation; no sibling package is released early.

PKG302

Package input selection. Select the files a package ships from the build’s recorded inputs and the explicitly retained files. Report missing build dependency evidence and a required input that is missing, linked or not a plain file; warn when the literal source graph is incomplete or ambiguous, because the recorded inputs then decide. A passed note lists the selection.

Resolve the build’s submission dependency diagnostic, or supply the project-relative file, then repeat preparation.

PKG303

Archive within the extraction limit. Fail when the prepared archive is larger than max_import_bytes (max_bytes unless set). It then cannot be re-extracted for the rebuild that verifies it, so it is not released.

Reduce the shipped files or raise max_import_bytes explicitly.

CMP101

Repeated baseline stability. Repeat the clean baseline build the configured number of times and require identical page count, extracted text and exact 144-DPI renders before transformation.

Remove nondeterministic content or stabilize the build environment before preparing transformed sources.

RPT101

Unmatched review decision. Report an explicit suppression or accepted exception whose exact code and location scope match no finding. Decisions are not inferred or broadened.

Review the selected code and location against the current findings.

RPT102

Ineligible review decision. Retain failures when a requested review decision targets incomplete evidence, an unwaivable safety/build/archive check or an error suppression.

Resolve the original finding; review decisions cannot establish missing evidence.

RPT103

Unverified diagnostic export. Label sanitized diagnostic reports and diffs as unverified material, never a submission package.

Use this bundle for diagnosis; run preparation separately for a verified output.

BLD201

Configured bibliography backend. Compare the selected auto, BibTeX or Biber strategy with bounded fresh AUX/BCF control evidence. Explicit strategies disable the other backend; malformed control files remain inconclusive.

Select the bibliography backend required by the source and supplied generated files, or correct the source/backend configuration, then rebuild.

BLD202

Required bibliography tool availability. Verify and record the locally available backend version in isolation when fresh bibliography controls require BibTeX or Biber. Availability alone does not prove bibliography completion or toolchain compatibility.

Install the required compatible bibliography tool explicitly or select a compatible supported strategy, then repeat the complete build.

FMT003

Formatter source encoding. Report a source file that is not valid UTF-8 when formatting is requested. Formatting currently requires UTF-8, so the file is left unformatted and no proposal covers it.

Convert an explicit copy of the file to UTF-8, or exclude it from the formatted files.

FMT004

Formatter source size limit. Report a source file over the formatting size limit when formatting is requested. The file is left unformatted and no proposal covers it.

Split the file or exclude it from the formatted files.

TEX201

Reviewed comment removal. Propose removing selected comment bodies from document sources (.tex/.ltx/.latex) while retaining percent signs, line endings, literal regions, directives and license blocks; local class/style files are copied unchanged. Unclosed or dynamic lexical contexts are inconclusive.

Review the copy and resolve unsupported lexical constructs before retrying.

TEX202

Literal source input merging. Plan recursive merging of standalone literal input lines within a bounded, single-root dependency graph; include/import execution semantics remain unsupported.

Use standalone literal input lines and a complete graph, or disable merging.

TEX203

Generated bibliography inlining. Replace one standalone bibliography command with an explicitly selected local BibTeX thebibliography environment; biblatex data and unresolved graphs are inconclusive.

Supply the intended generated BibTeX bibliography and review the rebuilt copy.

FMT101

Formatter protected regions. Reject changes to literal environments, inline literals, formatter-off regions, directives or license blocks; unmatched regions are inconclusive.

Exclude this source or use a formatter that preserves its protected regions.

FMT102

Project formatting exclusions. Select source with explicit project-relative glob exclusions and report unmatched patterns; unsafe linked source traversal remains inconclusive.

Correct exclusion patterns or replace linked inputs with local files.

FMT103

Explicit formatting blank-line policy. Verify paragraph-separator preservation or collapse repeated blank lines outside protected spans; this adapter policy is independent of formatter CLI flags.

Review the policy and diff, or exclude source with unresolved protected context.

PKG201

Explicit flat filename overrides. Apply portable unique filename overrides with unchanged extensions to the flat map; renaming required root/class/style/bibliography identities is unsupported.

Choose unique portable names with unchanged extensions and protected identities.

BIB201

Lossless bibliography field layout. Propose whitespace and trailing-comma layout for declared bibliography entries. Literal values, brace protection, concatenations, unknown fields, comments, string declarations, preambles, UTF-8 BOM and newline style are retained. Malformed or unreadable selected resources block the entire proposal; originals are never written.

Repair the indicated resource or source-scope ambiguity, then review the proposed diff and verify the rendered bibliography in the prepared copy.

BIB202

Explicit bibliography field removal. Remove explicitly named non-relationship fields in selected resources. No private-field list is assumed; unknown fields, values outside selected fields, string macros and percent comments are preserved. Invalid input blocks the complete proposal.

Choose exact field names to remove, repair unsupported resources and inspect the resulting diff; no field is treated as private without explicit selection.

BIB203

Conservative cited-only bibliography. Propose removal of entries unreachable from the selected literal citation graph, preserving nocite, aliases, relationships, entry sets, preambles and all string declarations. Multiple roots, dynamic citations, filters, missing keys, ambiguous aliases and unresolved relationships block pruning. No arbitrary-TeX coverage is claimed.

Resolve citation-scope uncertainty, or retain the complete bibliography. Review removed entries and rebuild the selected manuscript before releasing a copy.

BIB204

Reviewed bibliography key mapping. Apply explicit key renames and donor-to-retained-target merge mappings atomically to entry keys, supported literal citations and relationships. A merge retains target metadata exactly and drops the explicitly selected donor; identity and conflicts are never inferred. Dynamic uses, multiple roots, unknown keys and collisions block the complete proposal.

Review exact source and target keys and merge metadata, resolve uncertain uses, then retry the complete mapping and verify rendered citations.

BIB205

Guarded bibliography metadata edits. Apply explicit key/field/expected/replacement rows to literal metadata, including capitalization brace protection. None represents field absence or removal. Expected contents must match exactly; macros, concatenations, repeated fields and invalid replacement syntax block the complete proposal. No metadata is guessed.

Verify the current literal value and intended replacement against the cited work. Supply explicit capitalization protection and inspect the rendered result.

BIB206

Preservable bibliography key ordering. Opt-in literal key ordering moves intact entry bytes within a resource. Interleaved comments, free text and macros block moves across their boundaries. Sorting that would place a cross-reference parent before its child or requires resolving an external/macro parent is refused; bibliography backend semantics are not inferred.

Preserve the current order where comments, macros or cross-references make sorting ambiguous, or resolve those boundaries explicitly before retrying.

Conventions for configured checks

These conventions apply when you configure measurements, matching or templates.

Units and coordinates. PDF dimensions use PDF points (1/72 inch); build overflow uses TeX points. Regions are measured from the top-left corner of an unrotated, uncropped page, and margins are listed as left, top, right, bottom. Section budgets use explicit inclusive page ranges; Fledge does not infer where references or appendices start. Text-size rounding, unmeasured text and unsupported transforms are reported as uncertainty. Overlap, sparse-page, stroke and color findings stay advisory when the observation cannot establish intent. Type 3 is a font type, not proof of bitmap glyphs.

Metadata matching. Top-level match_source_pdf_metadata = ["title", "author"] compares unambiguous literal source values with the extracted PDF properties; generated or ambiguous source values are inconclusive. Explicit expectations use [pdf_checks.expected_metadata]. Choose one of the two for each field; configuring both is an error.

Template references. In submission_checks.template_references, the right-hand path resolves from the configuration file’s directory and the left-hand path names a file in the bundle, followed through flattening. Equality with the supplied file does not establish authenticity, age or compatibility.

Manuscript scope. Manuscript checks follow literal source structures without expanding arbitrary macros. Citation checks use one root unless bibliography_checks.all_roots is set. Apparently uncited entries and unused assets are review candidates, not deletion instructions. Source float order is not rendered float order.

Online results. Service failures, restricted resources, no match and ambiguous candidates are reported separately; no remote response rewrites the bibliography. See online evidence.