Spaces:
Sleeping
Sleeping
Commit History
-
Import pymupdf directly instead of the deprecated fitz alias
PyMuPDF now warns on 'import fitz' and says the alias will be removed. Rename all 20 references across the CLI, the app's preview path and the four redactor modules. The requirement floor moves to 1.24.3, the first release that exposes the top-level pymupdf name. Verified by redacting a real STARS report with the CLI: exits clean with no warning, reports OK (verified clean), and the name, surname and student ID are all absent from the output text. The preview path rasterises all 7 pages. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>f138503 -
Replace every em dash across the repo
Rewrites all 105 em dashes in place rather than swapping in hyphens, so the punctuation suits each sentence: colons where the dash introduced a definition or a list, full stops where it joined two independent clauses, commas or semicolons for asides, and parentheses for the one true mid-sentence interruption in the consent copy. One knock-on: the 'didn't produce a file' error now ends a sentence, so the following fragment starts with a capital. Touches app.py (47), CHANGELOG (15), admin/purge_submission.py (10), README (9), DELETION (9), redact_stars.py (6) and redactors/ (9). No behavior changes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>6a889d3
-
Add upload guardrails, deletion purge script, and longer report IDs
Pre-deployment review items: - Upload guardrails: 10 MB size, 15 page, and 30 second processing limits, each with a plain-language message. Size is checked in app.py before the bytes reach the engine; page count and the time limit are enforced in redact_bytes, which takes both as parameters and defaults them to off so the CLI stays unbounded. - Deletion: admin/purge_submission.py deletes a report AND purges it from the dataset's history, since the dataset is version-controlled and a plain delete leaves the file recoverable in the prior commit. DELETION.md explains the rationale and usage. Accepts the legacy 8-character IDs used by every report currently stored. - Report IDs: 8 hex characters from uuid4 -> 32 from secrets, making both guessing and collisions infeasible. Shown in a copy box since it is meant to be copied rather than transcribed. - Residual PII scan (redactors/residual.py): advisory, non-blocking warnings for an email address, phone number, or la…2b5e6b7
-
Graceful failure for bad uploads: non-STARS, corrupt/empty, and unexpected errors get clear messages (no tracebacks)
StrangeIB63447d0
-
Upload 8 files
Verified signaturec377a9f