Pre-submission verification for TMLR (Transactions on Machine Learning Research) manuscripts — packaged both as a standalone shell validator and as a Claude Code skill.
Born from a real desk rejection: a \setcitestyle{numbers,square,comma} override plus a
hand-typed thebibliography violated TMLR's "submissions that do not use the unmodified TMLR
stylefile" ground, and the paper was rejected roughly twelve hours after submission — no
content review, boilerplate letter, empty forum. The entire class of defect is mechanically
detectable in seconds. This repo detects it before TMLR does.
Ground 2 — unmodified stylefile / citation compliance
- No
\setcitestyle,\bibpunct, or directnatbibload in the document (tmlr.sty mandates author-year; any override is a desk-reject) - No manual
thebibliography/ hand-insertedReferencesheading — BibTeX viatmlr.bstonly tmlr.stypresent and carrying the officialauthoryearline (detects modified copies)- Compiled PDF contains zero
[n]-style numeric citations and exactly one References heading
Ground 1 — anonymity
- Plain
\usepackage{tmlr}— fails on[accepted]/[preprint], which reveal the author block - Blank PDF metadata (Author/Title/Subject/Keywords)
- No identity strings (you supply the regex), email addresses, code-hosting URLs, or acknowledgments in the PDF text
- Warns on traceable job identifiers (SLURM numbers, compute-service job IDs)
Compile hygiene
- No undefined references/citations, no natbib numeric-fallback error, no dangling
??, overfull-box count
Grounds 3–5 (overlap, author quota, perceived fit) are not file-checkable; the skill prints them as a human checklist instead of pretending otherwise.
./check_tmlr_submission.sh main.tex 'surname1|surname2|your-university|your-cluster'Run from the project directory after a full pdflatex → bibtex → pdflatex → pdflatex cycle.
Exit 0 = all hard checks pass. Requires poppler (brew install poppler /
apt install poppler-utils).
git clone https://github.com/mmurshed/tmlr-verify ~/.claude/skills/tmlr-verifyThen /tmlr-verify inside any TMLR project. The skill adds what grep cannot judge: a fresh
clean-cycle compile (a stale .aux from an old numeric build makes natbib silently fall back
to numeric citations — reproducing the desk rejection), identity-regex derivation from your own
\author{} block, alphabetical-order and citation-rendering spot checks on the PDF, a
two-minute screener-speed read of the abstract and section titles for skim-surface risks, and
the short-vs-long submission-type page count.
Upload the PDF and supplementary zip only — never the .tex. Under anonymous tmlr.sty
your real author block compiles to "Anonymous authors", so the source file de-anonymizes a
submission whose PDF is perfectly clean.
MIT