Repository navigation
scripts/beamer-qa.py: Beamer page screenshots, page-to-frame map, log digest, opt-in footline check - #185
Conversation
…s to frames, and digests the log /visual-audit runs it for Beamer decks. For each page: a PNG, the frame and overlay step from the .nav file, and the first line of text; then the errors and the warnings that matter from the .log beside the PDF. --band-mm FROM TO flags pages with ink in a strip above the footline, which a frame running over often produces without any LaTeX warning; the strip is theme-dependent, so it is opt-in, and --band-x-max skips a page number or navigation symbols on the right. Adapted, with its MIT notice, from shoot.py in claesbackman/AI-research-feedback: a PDF path argument, page size read from the PDF, the band made an option, output under quality_reports/, exit codes 0/1/2. Four portability cases (the band case builds its own PDF and skips without poppler); four mutants each fail their own case (LEDGER). Also run on a compiled Madrid deck. README and guide list poppler as optional; guide re-rendered and restamped.
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9f2e13c9ff
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…, and nothing else Codex review on PR #185 (P2): rerun into the same folder after a deck lost pages, the old NN.png files stayed beside the new ones, and /visual-audit reads that folder as the current deck. A full run now removes files named NN.png (and leftover NN_g.pgm) before rendering, as slide-qa.py removes only its own files; any other file in an --out folder is kept, and a --pages run replaces only the pages it renders. New portability case; three mutants (no cleanup, cleanup of every file, cleanup on a --pages run) each fail it. LEDGER and CHANGELOG updated; 244 portability cases.
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9d1ce2c30d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…notice Codex review on PR #185 (P2): under -file-line-error TeX writes an error as "./deck.tex:42: Undefined control sequence.", with no "!" and no "Error", and the digest required one or the other, so a broken build could read as clean and exit 0. A line that starts "file.ext:line: " (with an optional drive letter) is now an error. Found while checking that fix against a real XeLaTeX log: rerunfilecheck's notice says "Rerun" only on its "(rerunfilecheck)" continuation line, and the Rerun filter ran before the continuation was joined, so the notice was reported as a warning. The filter now runs after. One new portability case and one extended; four new mutants each fail their own case (LEDGER). 245 portability cases.
|
@codex review |
|
Codex Review: Didn't find any major issues. Can't wait for the next one! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
A Beamer counterpart to
scripts/slide-qa.py, run by/visual-auditfor.texdecks. Step 6 of the 2026-11-06 adoption plan..nav, with appendix frames labelledA1,A2, …) and the page's first line of text..logbeside the PDF: errors with their context line, overfull boxes, undefined references and missing characters. Wrapped(package)continuation lines are joined, "Rerun" notices are dropped, and duplicates are removed.--band-mm FROM TO(opt-in): flags every page with ink in a strip above the bottom edge. A frame whose content runs into the footline often compiles with no warning. On a Madrid test deck, LaTeX logged nothing for the overflowing frame and the band check named it. The strip depends on the theme, so there is no default.--band-x-maxskips a page number or navigation symbols on the right.Adapted, with its MIT notice, from
shoot.pyin claesbackman/AI-research-feedback. Changes from that file:_build/deck.pdfquality_reports/audits/beamer-qa/Verification
BeamerQaintests/portability/test_scripts.pyadds six cases:.navmap, with steps and the appendix-file-line-errorerrors and rerunfilecheck's two-line notice (Codex's second P2, fixed in 69b3e0b)--band-x-max, on a PDF the test builds itself (skipped without poppler)--pagesrun keeps them (Codex's P2, fixed in 9d1ce2c; skipped without poppler)--band-x-maxignored, no cleanup, cleanup of every file in the folder, cleanup on a--pagesrun, the "Error" requirement restored, drive letters missed, any:digitsread as an error, the Rerun filter before the join. Recorded in the LEDGER.HelloWorlddeck. It reported the undefined citation from a build without bibtex../scripts/backtest.shpasses: 322 battery cases, 245 portability cases.