-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Summary
DOCX conversion needs built-in timeout controls and stage-level telemetry to handle heavy documents predictably.
Problem
Some documents require excessive conversion time and currently depend on external wrappers for process-level timeouts. The library/CLI should provide first-class timeout behavior and timing visibility.
Proposal
- Add configurable timeout budget.
- library:
ConversionOptions::timeout - CLI:
--timeout-seconds <n> - return explicit timeout error type
- Add stage timing instrumentation.
- parse time
- IR -> Typst generation time
- Typst compile/export time
- Improve timeout UX.
- clear error message stating which stage exceeded budget
- deterministic non-zero exit code in CLI
- Add tests.
- unit tests for timeout option validation
- integration tests for timeout error mapping and exit behavior
Code Areas
crates/office2pdf/src/config.rscrates/office2pdf/src/lib.rscrates/office2pdf/src/error.rscrates/office2pdf-cli/src/main.rs
Acceptance Criteria
- CLI can enforce conversion timeout without external shell wrappers.
- Timeout failures are distinguishable from parse/render failures.
- Stage timing is available in logs (debug mode) for profiling.
- Default behavior remains backward-compatible when timeout is not set.
Non-Goals
- No XLSX scope in this issue.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working