1.4 KiB
1.4 KiB
Step 1: conversion-options-config
Read First
- /AGENTS.md
- /PLAN.md
- /PROGRESS.md
- /docs/HARNESS.md
- /docs/IMPLEMENTATION_PLAN.md
- /docs/ARCHITECTURE.md
- /docs/ADR.md
- /phases/1-core-runtime-contracts/step0.md
Task
Define the typed conversion options and runtime configuration used by CLI, library, parser adapters, renderer, and UI.
Include runtime mode, device behavior, chunk target pages, formula parser mode, Nougat command path, output directory, model cache location, and resume/log options.
Sprint Contract
- Done means: conversion options have defaults matching project policy and can be constructed by tests without CLI parsing.
- Hard thresholds: explicit
cudafail-fast semantics andautofallback semantics are represented; Nougat remains formula-only; PyQt and hosted API options are not introduced. - Files owned:
src/pdftomd/,tests/,PROGRESS.md,phases/1-core-runtime-contracts/index.json. - Dependencies: Step 0 normalized path/slug contract.
Acceptance Criteria
python scripts\validate_workspace.py
.\venv\python.exe -m pytest tests
Verification
- Run the acceptance commands.
- Confirm defaults align with
docs/ARCHITECTURE.mdanddocs/CONVERSION_POLICY.md. - Update
PROGRESS.mdand this phase index.
Do Not
- Do not add command-line parsing yet.
- Do not initialize CUDA, Marker, or Nougat.
- Do not add external API settings.