Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

ProDocuX Kernel

Deterministic document kernel for ProDocuX. Runtime does not call any LLM API (semantic drafting stays on the solver side).

License: Apache-2.0. See LICENSE.

Current prerelease on PyPI: 0.3.0rc2. Working tree for the next unpublished distribution is 0.3.0rc3 (not pushed, tagged, or published).

Documents

Install

git clone https://github.com/prodocux/prodocux.git
cd prodocux
.\runtime\install.ps1 -Fresh
.\runtime\verify.ps1

Or:

python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e ".[dev]"
.\.venv\Scripts\python.exe -m pytest -q

Install the deterministic extract/render prerelease from PyPI:

python -m pip install "prodocux==0.3.0rc2"

See the prodocux PyPI 0.3.0rc2 release and GitHub prerelease.

The older published wheel prodocux PyPI 0.3.0rc1 predates the additive extract/render freeze and must not be overwritten. Frozen compatibility v3 still pins implementation commit 53c4784d4b2bae4437252a287193e897973e8474. See docs/RELEASE.md.

See runtime/INSTALL.md for environment variables and private-sidecar notes.

Release maintainers can verify a wheel from an isolated temporary directory:

python scripts/verify_clean_install.py

See docs/RELEASE.md for the PyPI Trusted Publisher and GitHub approval-boundary workflow.

Test

.\.venv\Scripts\python.exe -m pytest -q

Start API

.\.venv\Scripts\python.exe run_kernel.py   # http://localhost:8900/v1

Available capabilities

Component Endpoint Status
Structure invariants (L0) POST /v1/validate-structure shipped
Scorer (L0–L3) POST /v1/score shipped
Review capture POST /v1/review/start, /commit shipped
Version GET /v1/version shipped
Legacy semantic extract/learn and path-shaped render POST /v1/extract, /learn, /render stub or 501
Deterministic block extraction POST /v1/intake/extract-blocks shipped
Deterministic artifact render POST /v1/render/artifact shipped
Render capabilities/artifact retrieval GET /v1/render/capabilities, /artifacts/{artifact_id} shipped
Deterministic PDF page intake POST /v1/intake/extract-pages shipped
JPEG/PNG technical profile POST /v1/intake/profile-image shipped
Typed evidence verification POST /v1/verify/evidence-bundle shipped
Normalized structured diff POST /v1/compare/normalized-profiles shipped

The PDF intake endpoint accepts only a bounded base64 payload and a plain .pdf basename. It returns source SHA-256, bounded page text, truncation disclosure, and an explicit ocr_required status without persisting the source document or calling an LLM.

GET /v1/intake/capabilities is the authoritative machine-readable source for available intake operations and their raw-byte/page ceilings. Clients should discover these limits instead of copying constants into adapters.

The evidence verifier accepts already-extracted typed evidence and declarative presence, equality, numeric-range, and date/version checks. It returns stable pass/fail/review reasons without interpreting product claims or regulations. Image OCR is available only through an explicitly injected bounded backend; otherwise the profile reports ocr_unavailable. Normalized diff reports source-linked structural/value changes but leaves business impact to the host.

Library hosts may inject an opaque artifact:// resolver. ProDocuX rejects network/local-path identities at this boundary and verifies declared media type, size, and SHA-256 before returning bytes; storage authorization and tenant isolation remain host responsibilities.

Flagship pipeline

Deterministic template extract → field mapping → precise write → structure repair → L0 gate. Content drafts are supplied by the solver as drafts.json.

See examples/pif_tw/ for curated synthetic fixtures (no customer documents).

Skills (first-party)

Skill Module
Structure health skills.structure_health
Number audit skills.number_audit
Version diff skills.version_diff
Clause diff skills.clause_diff
Doc assemble skills.doc_assemble
PIF audit (TW) skills.pif_audit
PDF extract skills.pdf_extract

All first-party skills are deterministic. CLI messages support en and zh-TW.

Acknowledgments

Codex and Cursor contributed implementation support, contract hardening, and cross-review for the multi-format intake upgrade. Final design and release decisions remain with the project maintainers.

Release files for prodocux 0.3.0rc3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for prodocux 0.3.0rc3
File Size Uploaded
prodocux-0.3.0rc3.tar.gz 149.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for prodocux 0.3.0rc3
File Interpreter ABI Platform
prodocux-0.3.0rc3-py3-none-any.whl Python 3 none any Details

Total release size: 302.5 kB

Release files / prodocux-0.3.0rc3.tar.gz

Download URL prodocux-0.3.0rc3.tar.gz
Size 149.9 kB
Tags Source
SHA-256 checksum
How to use checksums
7e8b66cba4c1182eafd3deb69b0d3e74169e859207a7f7eddd8e42565a931efa
BLAKE2b-256 checksum
How to use checksums
c4c539dcd221bc2d6ead5dab21fa634673fb42279a873960806eb1d5673ea35f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 28, 2026.

Transparency log

Release files / prodocux-0.3.0rc3-py3-none-any.whl

Download URL prodocux-0.3.0rc3-py3-none-any.whl
Size 152.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
016681fed6dd50a2482c158ed7c3a69fa6a94de1641e23575e40e38549513acf
BLAKE2b-256 checksum
How to use checksums
e04d0e2cfdabcbd06f1919ae5ad01a0fb331f4c2642b7dd8574fb899104a4a9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 28, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page