# PDF upload test record

**Checked through:** 14 October 2026. These are individual checks, not a statistical benchmark. Browser checks used macOS on an Apple-silicon Mac. Earlier checks used Chrome 155.0.8059.40; the follow-up mixed-format run used ego Lite. The generation model was Qwen3.7 Flash (`qwen3.7-flash-2026-07-15`).

## Selectable-text course PDF

The browser uploaded [course-bioenergetics.pdf](course-bioenergetics.pdf), a 2-page, 94 KB excerpt from Gerald Bergtrom's *Basic Cell and Molecular Biology (Bergtrom)*, Bio LibreTexts, section 4.1. Precheck found selectable text on both pages and zero pages requiring recognition. Generation completed with five cards and page labels. The [saved result](course-bioenergetics-result.json) can be compared with the cited pages.

Manual review found three answers aligned with explicit source statements or objectives. Two answers added definitions that need checking against the excerpt. We did not use a predefined scoring method, so we do not report a coverage or accuracy rate. Stage timings were not captured reliably; no end-to-end speed claim is made.

## Image-only PDF

The browser checked a one-page image-only [scan simulation](scanned-bioenergetics.pdf), marked one page as needing recognition, completed local OCR, and generated three cards. The [visible card transcript](scanned-bioenergetics-visible-output.json) records what the app displayed. Its source label showed the chapter title but omitted filename and page number. The scan is a rasterized simulation from a licensed textbook page, not a physical scan photograph.

## Five-file mixed-format browser run

On 13 October 2026, the five-file [PDF](mixed-cell-structure.pdf), [DOCX](mixed-glycolysis.docx), [PPTX](mixed-citric-cycle.pptx), [XLSX](mixed-electron-transport.xlsx), and [EPUB](mixed-cell-structure.epub) set was processed in ego Lite. All five files were marked Ready; the PDF was one page with zero pages needing recognition, and the EPUB had one chapter. Auto generated five cards. The deck retained all five filenames and reported five sections. Exact stage timings were not captured; the UI initially estimated about 2–3 minutes.

The [exported result](mixed-five-file-result.json) contains source labels for the DOCX, PPTX, PDF, and XLSX; the XLSX supplies two cards. No card has an EPUB source label. The EPUB's nucleus fact duplicates the PDF, and its ribosome and plasma-membrane facts do not appear in the five-card result. This run verifies that the combined upload reached generation and retained the five filenames, but it does **not** demonstrate card-level traceability or fact coverage for every input. Do not claim that all five sources contributed a card.

### Auto-language follow-up

On 14 October 2026, the same five files were selected with the UI language set to Chinese and output language set to Auto Detect. Every file passed precheck; the PDF had one page, 232 selectable text characters, and no OCR pages; EPUB reported one chapter. The browser generated five English cards. The [saved follow-up export](mixed-five-file-followup-english-result.json) cites the DOCX, PPTX, XLSX, and PDF, but still omits EPUB. This confirms the language-selection fix; it does not establish complete file coverage.

## 72-page PDF budget and append run

On 13 October 2026, ego Lite checked the CC0 [72-page PDF](long-budget-check.pdf) (299 KB). It was selectable text with zero pages needing recognition. Selecting all pages showed **235,752 extracted characters**, above the **210,000-character batch limit**, and was blocked before text was sent to the model.

Selecting pages 1–10 generated 24 cards in a new deck. Selecting pages 11–20 through “Add a section from files” appended 27 cards to that deck, for 51 total. The [first-range export](long-budget-range-result.json) and [two-batch export](long-budget-append-result.json) are available for inspection. The UI estimated 4–5 minutes before generation; exact elapsed time was not captured, and the first range completed by the next check after a 30-second wait.

This sample repeats the same ten core facts across its pages, so it demonstrates the text-budget boundary and adding a second range to the same deck, not broad chapter coverage. The output labels stayed within the selected ranges: the first-range cards cited page 1, while the second batch cited page 11 or the 11–20 span. Because facts repeat throughout the sample, those labels do not demonstrate full-page citation distribution. No identical normalized question-and-answer pairs remained, but related ideas with different wording or answer phrasing did. This earlier run predates the duplicate filter for strong wording overlap and does not demonstrate semantic deduplication.

The saved deck reported “1 source batches” for the two batches because both came from the same filename. The app now records each selected range as a separate batch; the saved export shows the earlier result.

A separate text-only sample check used two original one-page PDFs. Ten requested cards yielded eight cards in 12.33 seconds for the generation call. It is not an upload, OCR, large-file, or competitor test; its [input files](cell-structure.pdf) and [output](pdf-generation-result.json) are separate from the browser runs above.

See [LICENSE.txt](LICENSE.txt) for the CC0 terms and the CC BY 4.0 attribution for the Bio LibreTexts excerpt.

## Improvements made after these checks

The scan and mixed-format results exposed source-label and coverage gaps. When the selected card count can represent each file, generation now requests coverage across distinct files, and the deck reports how many inputs received a citation. A one-source result retains its available filename and page label if the model shortens it; ambiguous citations across multiple sources remain marked `Source not identified`. If a result still misses a file, the app can make one focused recovery generation in the same user request, then prioritize one cited card per file. This uses one daily generation but may make one additional model call. This recovery step has not yet been checked in a live run; the exports above show results from before it was added.

Long multi-file summaries stay within each file so citations can be recovered. If doing so would require more than seven summaries, the app asks you to select fewer pages or split the files before sending material to the model.

If adding a batch fails before saving, the deck and selected files remain available for retry. Successful appends skip exact duplicates and cards with strong wording overlap. Similar ideas can still be phrased differently, so review cards from related ranges before studying.

DOCX headings and table rows are retained in the extracted source text when available.
