Skip to content

Spike: visual artifact parser class (OCR, scanned PDFs) and PPTX #108

Description

@burakdede

Parent epic: #8 (post-v0.1 backlog)

Context

§1.4 records that screenshots were promised while OCR was excluded, a real mismatch, and resolved it by removing screenshots and scanned documents from the v0.1 promise and listing them as a future parser class. §5.2 excludes OCR, screenshots, images, audio, video, and PPTX.

Post-v0.1. The v0.1 behavior (refuse clearly) must remain until this ships.

Spec references

§1.4 feedback audit, §5.2 Explicitly out of scope, §8.7 (optional parser adapters), §24.4 parsing quality risk.

Scope

In: an evaluation of the visual/scanned artifact parser class. OCR for scanned PDFs and images, and PPTX, including dependency implications and quality expectations.
Out: shipping a parser in this issue; any change to v0.1's clear refusal behavior.

Design notes

  • The blocking constraint is §6.1: no native dependency, no Python sidecar, no compiler toolchain in the core install. Any OCR engine must therefore be an optional package with the same explicit-install contract as the semantic package (§5.6), or be rejected.
  • PPTX is a separate, easier question (an OOXML format like DOCX/XLSX) and may be viable much sooner than OCR, the spike should not bundle their fates together.
  • Quality expectations must be honest: OCR output is lossy, and §4.4/§24.4 require visible warnings rather than silent degradation.

Acceptance criteria

  • Evaluation of OCR options against the §6.1 no-native-dependency constraint, including whether an optional-package model is acceptable.
  • Separate assessment and recommendation for PPTX, which needs no OCR.
  • Quality and provenance analysis: what locators are achievable for OCR'd content, and how confidence/loss is surfaced as warnings.
  • Determinism analysis: whether the chosen engine produces stable output across runs and platforms (a hard requirement for build IDs, §20.3).
  • Recommendation with prioritization and follow-up issues, or a recorded decision to defer.
  • Until this ships, the v0.1 behavior stands: scanned documents and images are excluded with an explicit out-of-scope warning.

Tests / verification

  • Prototype determinism check on a small scanned corpus if an engine is shortlisted.
  • Findings recorded as an ADR entry.

Dependencies

Blocked by the v0.1 release (#102).

Definition of Done

The visual-artifact question is answered with evidence, and PPTX is prioritized independently of OCR.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions