38 lines
1.2 KiB
Markdown
38 lines
1.2 KiB
Markdown
# Step 2: resume-state
|
|
|
|
## Read First
|
|
- /AGENTS.md
|
|
- /PLAN.md
|
|
- /PROGRESS.md
|
|
- /docs/HARNESS.md
|
|
- /docs/IMPLEMENTATION_PLAN.md
|
|
- /docs/CONVERSION_POLICY.md
|
|
- /phases/6-cli-runtime-resume/step1.md
|
|
|
|
## Task
|
|
Implement runtime resume state for successful and failed chunks.
|
|
|
|
Resume state is a runtime artifact, not a document output sidecar.
|
|
|
|
## Sprint Contract
|
|
- Done means: conversion can skip completed chunks and retry failed chunks using a local state file in tests.
|
|
- Hard thresholds: state format is deterministic; stale state is detected; resume does not skip chunks when input/options changed materially.
|
|
- Files owned: `src/pdftomd/resume.py`, runtime integration/tests, `PROGRESS.md`, phase index.
|
|
- Dependencies: Progress/logging and chunk renderer contracts.
|
|
|
|
## Acceptance Criteria
|
|
```powershell
|
|
python scripts\validate_workspace.py
|
|
.\venv\python.exe -m pytest tests
|
|
```
|
|
|
|
## Verification
|
|
1. Run the acceptance commands.
|
|
2. Confirm state files are written only under temp/runtime cache paths in tests.
|
|
3. Update `PROGRESS.md` and this phase index.
|
|
|
|
## Do Not
|
|
- Do not treat resume state as part of generated document output.
|
|
- Do not skip chunks after parser/version-relevant option changes.
|
|
- Do not create hidden global state.
|