Deterministische differenzielle Regressionstests
HPDFCompareRegressionResultsDeterministic führt zwei Engine-Adapter über ausgewählte Domänen wiederholt aus, weist instabile oder fehlgeschlagene Durchläufe zurück und erfasst ein geordnetes maschinenlesbares Ergebnis
API
function HPDFCompareRegressionResultsDeterministic(
const Input: TBytes;
Domains: THPDFRegressionDomains;
const LeftProbe, RightProbe: THPDFRegressionProbe;
const Options: THPDFDifferentialProbeOptions;
out AInfo: THPDFDifferentialRegressionInfo): Boolean;Domänen
| Domäne | Integrierte HotPDF-Signatur |
|---|---|
rgdParser | Zusammenfassung zu Seite, Objekt, Version, Anmerkung, Schrift, Bild, Formular, Signatur, Verschlüsselung, AcroForm und Struktur |
rgdRenderer | Von oben nach unten berechneter BGR-Pixel-SHA-256 bei fester DPI, ohne Alpha und Zeilen-Padding |
rgdText | Seitengrenzen-orientierter UTF-8-SHA-256 nach CRLF- und CR-Normalisierung |
rgdSave | SHA-256 und Bytelänge der begrenzten Ausgabe mit deterministischer Wörterbuchreihenfolge |
Die Legacy-Werte rgdSignature und rgdConformance bleiben verfügbar, damit vorhandene Probe-Adapter ihre Ordinalwerte und ihre Quellkompatibilität behalten
HPDFRegressionDomainName(Domain) liefert den stabilen kleingeschriebenen Namen eines THPDFRegressionDomain-Werts wie parser oder renderer für Protokoll- und Berichtsfelder
Stabilitätsvertrag
HPDFDefaultDifferentialProbeOptions wählt drei Läufe, ein Eingabelimit von 256 MiB und stabile Fallback-Engine-Namen
RepeatCount akzeptiert 2 bis 64 Läufe; eine Signaturänderung innerhalb einer Engine markiert diese Domäne als instabil, selbst wenn ihre erste Signatur zur anderen Engine passt
Probe-Ausnahmen werden in stabile Fehlersignaturen aus Ausnahmeklasse und SHA-256 der Meldung umgewandelt; jeder Fehler lässt die Domäne geschlossen abweichen
Dieselbe unveränderliche Eingabe wird in fester Domänen- und Engine-Reihenfolge geliefert, und jede gewählte Domäne erscheint einmal im JSON-Bericht
Eingebaute Grenzen
Die konfigurierbare Überladung HPDFProbeHotPDFDocument akzeptiert eine Render-DPI, eine maximale Seitenzahl und maximale Ausgabebytes
Render-Fingerabdrücke schließen Alpha und Zeilen-Padding aus, Text-Fingerabdrücke normalisieren die Zeilenumbruch-Darstellung, und Save-Ausgabe nutzt vor dem Hashen einen begrenzten Stream
Bericht
THPDFDifferentialRegressionInfo trägt verglichene und abweichende Domänenmengen, linke und rechte Signaturen, instabile Mengen, Fehlermengen, Engine-Namen, die Wiederholungsanzahl und die Eingabe-SHA-256
HPDFDifferentialRegressionInfoToJSON gibt das feste Schema hotpdf.differential.v1 mit stabiler Feld- und Domänenreihenfolge aus, für CI, Korpus-Triage und Audit-Speicherung
Kompatibilitätshelfer
HPDFCompareRegressionResults behält das ursprüngliche Einzellauf-Callback-Verhalten für Aufrufer bei, die bereits extern stabilisierte Signaturen erzeugen