OE openextract

Live provider smoke tests

Optional harness for maintainers to verify real provider integration paths. Default pytest / CI runs never make network or model calls.

Opt-in

# representative live smoke (requires credentials for the selected model)
OPENEXTRACT_LIVE_SMOKE=1 uv run pytest -m integration tests/test_live_smoke.py -v

# existing example-based live checks
OPENEXTRACT_RUN_EXAMPLES=1 uv run pytest -m integration tests/test_examples.py -v

Without these env vars, integration tests skip.

What is covered initially

Test Model (default) Media Credential
test_live_openai_image_smoke openai:gpt-5 bundled PNG fixture OPENAI_API_KEY

Override the model with OPENEXTRACT_LIVE_MODEL when needed.

Design rules