Repository navigation
Conversation
Issues embedded their example images from the GitHub Pages report, which holds only the newest deployment, is capped at 1 GB, and is rebuilt from artifacts with limited retention, so images went missing or changed. The issues job now uploads the example case's images and evidence to a `conformance-assets` pre-release, named by issue key and content hash, and links them from the body. Unchanged files are not uploaded again, stale ones are deleted, and closing an issue deletes its assets. Without write access the bodies fall back to Pages links. `repro` uses the kept PDFium image when Pages has no report. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Conformance readsDocuments that Safe-PDF reads differently from the base commit, compared with PDFium. A read pdf.js corpus1009 documents compared with Improvements
840 documents of the PDFium corpus read as on Details are in the job summaries of the workflow run. Rerun a case locally with |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Conformance issues embedded their example images from the GitHub Pages report. Pages holds only the newest deployment, is capped at 1 GB, and is rebuilt from artifacts with limited retention (run artifacts 14 days,
pages-conformance90 days), so issue images went missing or changed under the issue. GitHub has no API for uploading issue attachments withGITHUB_TOKEN, anddata:images are stripped, so the files need another durable home that renders inline.What
tools/conformance/src/issue_assets.rs: anAssetStorethat keeps files as assets of aconformance-assetspre-release (created on first use). Assets are named<issue key>--<content hash>--<file>: unchanged files are not uploaded again, a changed file gets a new name (so GitHub's image cache never shows a stale image), and an issue's older assets are deleted.issues.rs: before writing an issue, uploads the example case'spN-ref/safe/diff.png,pN-content.txt,pN-streams.txtandsummary.md. Existing issues whose bodies link no assets yet are rewritten once. Closing an issue (by the workflow or as not planned) deletes its assets. If the release cannot be written, a warning is logged and bodies fall back to Pages links; dry runs never touch the release.issue_body.rs: images use the asset links (clicks still open the Pages viewer), an "Evidence kept with this issue" line, and anexampleentry with the asset links in the agents' JSON block.repro.rs: with no Pages report, reruns the issue's cases against the PDFium image kept with the issue.conformance.yml: theissuesjob getscontents: writefor release uploads.tools/conformance/README.mddocuments the above.Notes
conformance-assetstag and an entry on the Releases page.rustfmt-clean.gh release uploadstoresimage/pngfrom the extension), but has not yet been seen in a real issue; the firstmainrun, orcargo conformance issuesagainst a scratch fork, will confirm it.🤖 Generated with Claude Code