CI: attach every validator's report to the Forme Review upload - #77
Merged
Conversation
The UA-1 gate keeps each veraPDF report under OUT_DIR/reports; the e-invoice gate writes its PDF into the corpus, keeps its veraPDF reports (PDF/A-3b, PDF/UA-1), and turns Mustang's report into the documented forme-review-conformance/1 JSON — Forme Review parses veraPDF and nothing else, so Mustang, which we run ourselves, goes through the JSON like any other validator. The upload step moves after the e-invoice gate and attaches dist/review/reports/*. pdf-testkit 0.3.0. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MKzAu3ytK4juTnPg1XHNRN
📄 pdf-testkit —
|
verify-einvoice.mjs called veraValidate, keepReport and mustangToConformance from parity/lib.mjs without importing them, so the gate threw before its first validator ran. The unused inline veraCompliant goes with it. Both gates run locally against veraPDF 1.30.2 and Mustang 2.26.0 with OUT_DIR set, and the 42 kept reports parse and match all 40 documents through the 0.3.0 CLI's parser. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@pdf-testkit/vitest ^0.1.6 held the top-level @pdf-testkit/core at 0.1.6 while the CLI carried its own nested 0.3.0; whichever resolved first would win. The matchers at 0.3.0 depend on core ^0.3.0, so the lock now installs one core and drops the nested copy. The 29 regression tests that use the matchers pass unchanged. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
The UA-1 gate keeps each veraPDF report under
dist/review/reports; the e-invoice gate writes its Factur-X PDF into the corpus, keeps its veraPDF reports (PDF/A-3b, PDF/UA-1), and turns Mustang's report into the documentedforme-review-conformance/1JSON. The upload step moves after the e-invoice gate and attachesdist/review/reports/*, on pdf-testkit 0.3.0.Forme Review parses veraPDF and nothing else, by policy; Mustang, which this repo runs itself, goes through the JSON like any other validator. The adapter is
mustangToConformanceinscripts/parity/lib.mjs, about forty lines. Verified locally: a real Mustang 2.26.0 report round-trips through the pdf-testkit 0.3.0 parser with its failures and version, and a kept veraPDF report parses with the file path intact.After this, every run carries a PDF/UA-1 verdict on all 39 documents, and PDF/A-3b, PDF/UA-1 and EN 16931 verdicts on the Factur-X invoice, each attributed to the validator that produced it. Forme Review records them; it does not validate, and a verdict never changes the check.