Sonde di Regressione Differenziali Deterministiche

HPDFCompareRegressionResultsDeterministic esegue due adattatori di motore ripetutamente nei domini selezionati, rifiuta le esecuzioni instabili o fallite e registra un solo risultato ordinato leggibile dalla macchina

API

function HPDFCompareRegressionResultsDeterministic(
  const Input: TBytes;
  Domains: THPDFRegressionDomains;
  const LeftProbe, RightProbe: THPDFRegressionProbe;
  const Options: THPDFDifferentialProbeOptions;
  out AInfo: THPDFDifferentialRegressionInfo): Boolean;

function HPDFProbeHotPDFDocument(
  Domain: THPDFRegressionDomain;
  const Input: TBytes): AnsiString;

function HPDFDifferentialRegressionInfoToJSON(
  const AInfo: THPDFDifferentialRegressionInfo): AnsiString;

Domini

DominioFirma HotPDF integrata
rgdParserSintesi di pagine, oggetti, versione, annotazioni, font, immagini, moduli, firme, cifratura, AcroForm e struttura
rgdRendererSHA-256 BGR dei pixel dall'alto in basso a una DPI fissa con esclusi alpha e riempimento delle righe di scansione
rgdTextSHA-256 UTF-8 delimitato per pagina dopo la normalizzazione di CRLF e CR
rgdSaveSHA-256 e lunghezza in byte dell'output limitato prodotto con ordine deterministico del dizionario

I valori legacy rgdSignature e rgdConformance restano disponibili così che gli adattatori di sonda esistenti mantengano i propri valori ordinali e la compatibilità della sorgente

HPDFRegressionDomainName(Domain) restituisce il nome stabile in minuscolo di un valore THPDFRegressionDomain come parser o renderer per i campi di log e dei report

Contratto di stabilità

HPDFDefaultDifferentialProbeOptions seleziona tre esecuzioni, un limite di input di 256 MiB e nomi di motore di fallback stabili

RepeatCount accetta da 2 a 64 esecuzioni; un cambiamento della firma all'interno di un motore marca quel dominio come instabile anche quando la sua prima firma corrisponde all'altro motore

Le eccezioni della sonda vengono convertite in firme di errore stabili che contengono la classe dell'eccezione e uno SHA-256 del messaggio, e qualsiasi errore fa chiudere in modo sicuro il dominio in disaccordo

Lo stesso input immutabile viene fornito in ordine fisso di dominio e motore, e ogni dominio selezionato appare una volta nel report JSON

Limiti integrati

L'overload configurabile HPDFProbeHotPDFDocument accetta una DPI di rendering, il numero massimo di pagine e i byte massimi di output

I fingerprint di render escludono alpha e riempimento di riga, i fingerprint di testo normalizzano la rappresentazione delle nuove righe e l'output di save usa uno stream limitato prima dell'hashing

Report

THPDFDifferentialRegressionInfo trasporta i set di domini confrontati e divergenti, le firme sinistra e destra, i set instabili, i set di errore, i nomi del motore, il conteggio di ripetizione e lo SHA-256 dell'input

HPDFDifferentialRegressionInfoToJSON emette lo schema fisso hotpdf.differential.v1 con ordine stabile di campo e dominio per CI, triage del corpus e archiviazione di audit

Helper di compatibilità

HPDFCompareRegressionResults mantiene il comportamento originale a singola esecuzione con callback per i chiamanti che producono già firme stabilizzate esternamente