pdftract/notes/bf-3bnao-step4.md
jedarden d6f33cc0dc docs(bf-3bnao-step4): document pdftract verification failure
Exit code: 1 (failure)
Error: Failed to extract PDF
No JSON output produced
SHA256 mismatch on fingerprint-match.pdf

This bead documents the failure and should NOT be closed until
the root cause is identified and fixed.
2026-07-06 19:22:52 -04:00

3.2 KiB

bf-3bnao-step4: Verify pdftract completed successfully

Date: 2026-07-06 State: FAIL

Verification Results

Exit Code Check

  • Expected: 0 (success)
  • Actual: 1 (failure)
  • Status: FAIL

Output Format Check

  • Expected: Valid JSON or expected pdftract output format
  • Actual: No JSON output (extraction failed before producing output)
  • Status: FAIL

Error Messages Check

  • Expected: No error messages in stderr
  • Actual: Error message present: "Failed to extract PDF"
  • Status: FAIL

Additional Test Results

Test Run 2 (Direct verification)

Command: cargo run -- extract tests/fixtures/encoding/fingerprint-match.pdf --json -
Exit Code: 1
Error: Failed to extract PDF

Status: FAILED - Same error reproduced

File Integrity Check

  • Expected SHA256: bd9a3533c0f31fb20bf5532fcff4cb2ae399f8d2e22ea1d09538837410544c4a
  • Actual SHA256: 2eaeba307f622ca6b6d6174bd1bdd9a1310268c7d4f101d3e2a222ba8b719689
  • Status: MISMATCH - File has been modified or corrupted

File Header Inspection

%PDF-1.4
1 0 obj
<<
/Type /Catalog
/Pages 2 0 R

Status: PDF header appears valid

Command Output Summary

From step3 (bf-32by8-step3.md):

Command: unset RUST_LOG; cargo run -- extract tests/fixtures/encoding/fingerprint-match.pdf --json -
Exit Code: 1
Error: Failed to extract PDF

Acceptance Criteria Status

  • Exit code from the command is 0 (success) - FAIL (exit code was 1)
  • Output contains valid JSON or expected pdftract output format - FAIL (no output produced)
  • No error messages in stderr - FAIL (error: "Failed to extract PDF")
  • Document verification results in notes/bf-3bnao-step4.md - PASS (this file)

Conclusion

The pdftract command did not complete successfully. The PDF extraction failed with exit code 1 and error message "Failed to extract PDF". The failure has been reproduced across multiple test runs.

Key Findings

  1. File Integrity Issue: The SHA256 hash of encoding/fingerprint-match.pdf does not match the expected value in tests/fixtures/PROVENANCE.md

    • Expected: bd9a3533c0f31fb20bf5532fcff4cb2ae399f8d2e22ea1d09538837410544c4a
    • Actual: 2eaeba307f622ca6b6d6174bd1bdd9a1310268c7d4f101d3e2a222ba8b719689
  2. PDF Structure: Despite the hash mismatch, the file header appears valid (%PDF-1.4), suggesting the file is not completely corrupted but has been modified

  3. Reproducible Failure: The extraction failure is consistent across multiple attempts, ruling out transient issues

Root Cause Analysis

The most likely cause is that the PDF file tests/fixtures/encoding/fingerprint-match.pdf has been modified or corrupted. The SHA256 mismatch indicates the current file on disk differs from the version recorded in PROVENANCE.md. This could explain why pdftract fails to extract it.

This bead should NOT be closed until:

  1. The correct fingerprint-match.pdf file is restored or
  2. The root cause of the extraction failure is identified and fixed or
  3. The pdftract code is updated to handle this file variant

The verification results are documented but the acceptance criteria are not met.