📋 Dependencies & Software Bill of Materials
A complete, auditor-ready manifest of every software component inside the VEOX Enclave container. This page is auto-verified against the production Docker image and is current as of March 2026.
Executive Summary
| Category |
Details |
| Container Runtime |
Docker (OCI-compatible) |
| Base Image (Build) |
cgr.dev/chainguard/python:latest-dev — hardened, CVE-free, Sigstore-signed |
| Base Image (Runtime) |
python:3.11-slim-bookworm (Debian 12) |
| Python Version |
3.14.3 (conda-forge, via Pixi package manager) |
| Package Manager |
Pixi (conda-forge + PyPI resolver with lockfile) |
| Total Python Packages |
80 |
| OS Packages |
PostgreSQL 15, tini, TeX Live, OpenSSL 3.6.1 |
| Network Requirements |
None at runtime — fully air-gapped after image pull |
Container Stack
Operating System & System Packages
| Component |
Version |
Source |
Purpose |
| Debian GNU/Linux |
12 (Bookworm) |
Official Docker Hub |
Runtime OS |
| Linux Kernel (host) |
6.8.0-90-generic |
Ubuntu |
Host kernel |
| PostgreSQL |
15.16 (Debian 15.16-0+deb12u1) |
apt |
Embedded task queue / scheduler state |
| tini |
0.19.0 |
apt |
PID 1 init — proper signal handling + zombie reaping |
| OpenSSL |
3.6.1 (27 Jan 2026) |
conda-forge |
TLS and cryptographic operations |
| pdfTeX (TeX Live) |
3.141592653-2.6-1.40.24 (TeX Live 2022) |
apt |
PaperKit PDF generation |
| curl |
System default |
apt |
Health checks |
| wget |
System default |
apt |
Pixi binary download (build only) |
TeX Live Packages (PDF Generation)
PDFs are built inside the enclave via the PaperKit API (POST /jobs/{id}/build_paper, GET /jobs/{id}/paper_pdf). No LaTeX is required on the client.
| Package |
Purpose |
texlive-latex-extra |
Extended LaTeX macro packages |
texlive-fonts-recommended |
Standard font families |
texlive-science |
Scientific document formatting |
texlive-pictures |
TikZ/PGF graphics |
lmodern |
Latin Modern font family |
Python Dependencies — Full Manifest
All packages below are resolved via Pixi with a lockfile (pixi.lock) ensuring reproducible builds. Versions are verified against the production container.
Core ML / Data Science
| Package |
Version |
License |
Purpose |
numpy |
2.4.2 |
BSD-3-Clause |
Array computation foundation |
scipy |
1.17.1 |
BSD-3-Clause |
Scientific computing, optimization |
pandas |
3.0.1 |
BSD-3-Clause |
Tabular data processing |
scikit-learn |
1.8.0 |
BSD-3-Clause |
Machine learning algorithms, pipelines, metrics |
xgboost |
3.2.0 |
Apache-2.0 |
Gradient boosted trees |
lightgbm |
4.6.0 |
MIT |
Gradient boosted trees (alternate) |
torch (PyTorch CPU) |
2.10.0 |
BSD-3-Clause |
Deep learning framework (CPU-only build) |
joblib |
1.5.3 |
BSD-3-Clause |
Parallel execution / model serialization |
threadpoolctl |
3.6.0 |
BSD-3-Clause |
Thread pool management for BLAS/LAPACK |
Web Framework & API
| Package |
Version |
License |
Purpose |
fastapi |
0.135.1 |
MIT |
Async REST API framework |
uvicorn |
0.41.0 |
BSD-3-Clause |
ASGI server (HTTP + WebSocket) |
uvloop |
0.22.1 |
MIT / Apache-2.0 |
High-performance event loop for uvicorn |
starlette |
0.52.1 |
BSD-3-Clause |
ASGI toolkit (FastAPI dependency) |
pydantic |
2.12.5 |
MIT |
Data validation and serialization |
pydantic_core |
2.41.5 |
MIT |
Rust-accelerated Pydantic core |
pydantic-extra-types |
2.11.0 |
MIT |
Additional Pydantic type validators |
pydantic-settings |
2.13.1 |
MIT |
Configuration from environment |
python-multipart |
0.0.22 |
Apache-2.0 |
File upload parsing |
httpx |
0.28.1 |
BSD-3-Clause |
HTTP client (used by SDK tests) |
httpcore |
1.0.9 |
BSD-3-Clause |
HTTP transport backend for httpx |
h11 |
0.16.0 |
MIT |
HTTP/1.1 protocol implementation |
h2 |
4.3.0 |
MIT |
HTTP/2 protocol implementation |
websockets |
16.0 |
BSD-3-Clause |
WebSocket protocol support |
Cryptography & Security
| Package |
Version |
License |
Purpose |
cryptography |
46.0.5 |
Apache-2.0 / BSD-3-Clause |
AES-GCM, ChaCha20-Poly1305 encryption |
cffi |
2.0.0 |
MIT |
C Foreign Function Interface (crypto backend) |
pycparser |
2.22 |
BSD-3-Clause |
C parser for cffi |
certifi |
2026.2.25 |
MPL-2.0 |
Mozilla CA certificate bundle |
Database
| Package |
Version |
License |
Purpose |
psycopg2-binary |
2.9.11 |
LGPL-3.0 |
PostgreSQL Python adapter |
Visualization & Reporting
| Package |
Version |
License |
Purpose |
matplotlib |
3.10.8 |
PSF |
Chart and figure generation for PaperKit |
Pygments |
2.19.2 |
BSD-2-Clause |
Syntax highlighting for generated reports |
Pillow |
12.1.1 |
HPND |
Image processing |
contourpy |
1.3.3 |
BSD-3-Clause |
Contour plot algorithms (matplotlib dep) |
cycler |
0.12.1 |
BSD-3-Clause |
Style cycler for matplotlib |
fonttools |
4.62.0 |
MIT |
Font file handling |
kiwisolver |
1.5.0 |
BSD-3-Clause |
Constraint solver for layout |
Templates & Configuration
| Package |
Version |
License |
Purpose |
Jinja2 |
3.1.6 |
BSD-3-Clause |
Template engine for PaperKit LaTeX |
MarkupSafe |
3.0.3 |
BSD-3-Clause |
Safe string marking for Jinja2 |
PyYAML |
6.0.3 |
MIT |
YAML parsing for algorithm configs |
System Monitoring
| Package |
Version |
License |
Purpose |
psutil |
7.2.2 |
BSD-3-Clause |
CPU, memory, disk, and network monitoring |
| Package |
Version |
License |
Purpose |
typer |
0.24.0 |
MIT |
CLI framework for FastAPI CLI |
rich |
14.3.3 |
MIT |
Rich terminal formatting |
rich-toolkit |
0.19.7 |
MIT |
Rich extensions |
click |
8.3.1 |
BSD-3-Clause |
CLI argument parsing |
shellingham |
1.5.4 |
ISC |
Shell detection |
markdown-it-py |
4.0.0 |
MIT |
Markdown parsing |
mdurl |
0.1.2 |
MIT |
URL parsing for markdown-it |
Core Python Libraries
| Package |
Version |
License |
Purpose |
typing_extensions |
4.15.0 |
PSF |
Backported type hints |
typing-inspection |
0.4.2 |
MIT |
Runtime type inspection |
annotated-types |
0.7.0 |
MIT |
Type metadata (Pydantic dep) |
annotated-doc |
0.0.4 |
MIT |
Annotated types documentation |
anyio |
4.12.1 |
MIT |
Async compatibility layer |
sniffio |
1.3.1 |
MIT / Apache-2.0 |
Async library detection |
exceptiongroup |
1.3.1 |
MIT |
Exception group backport |
six |
1.17.0 |
MIT |
Python 2/3 compatibility |
python-dateutil |
2.9.0.post0 |
Apache-2.0 |
Date parsing |
python-dotenv |
1.2.2 |
BSD-3-Clause |
.env file loading |
idna |
3.11 |
BSD-3-Clause |
International domain name support |
dnspython |
2.8.0 |
ISC |
DNS toolkit |
Numeric & Symbolic
| Package |
Version |
License |
Purpose |
sympy |
1.14.0 |
BSD-3-Clause |
Symbolic mathematics (PyTorch dep) |
mpmath |
1.3.0 |
BSD-3-Clause |
Arbitrary precision math |
gmpy2 |
2.2.1 |
LGPL-3.0 |
GMP bindings for fast number theory |
networkx |
3.6.1 |
BSD-3-Clause |
Graph algorithms (PyTorch dep) |
optree |
0.19.0 |
Apache-2.0 |
Pytree operations (PyTorch dep) |
Build & Packaging
| Package |
Version |
License |
Purpose |
setuptools |
82.0.0 |
MIT |
Package building |
pip |
26.0.1 |
MIT |
Package installation |
packaging |
26.0 |
Apache-2.0 / BSD-2-Clause |
Version parsing |
tomli |
2.4.0 |
MIT |
TOML file parsing |
filelock |
3.25.0 |
Unlicense |
File-based locking |
fsspec |
2026.2.0 |
BSD-3-Clause |
Filesystem abstraction |
pybind11 |
3.0.1 |
BSD-3-Clause |
C++ bindings (dep of compiled libs) |
pyparsing |
3.3.2 |
MIT |
Text parsing (matplotlib dep) |
HTTP Protocol
| Package |
Version |
License |
Purpose |
hpack |
4.1.0 |
MIT |
HTTP/2 HPACK header compression |
hyperframe |
6.1.0 |
MIT |
HTTP/2 framing layer |
httptools |
0.7.1 |
MIT |
HTTP parsing (uvicorn accelerator) |
watchfiles |
1.1.1 |
MIT |
File watcher (uvicorn dev reload) |
email-validator |
2.3.0 |
CC-BY-SA-4.0 |
Email validation (Pydantic dep) |
Internal
| Package |
Version |
License |
Purpose |
veox_enclave |
0.1.0 |
Proprietary |
VEOX internal API package |
Network Requirements
Air-Gapped Runtime
The VEOX Enclave requires zero network access at runtime. All dependencies are pre-packaged inside the Docker image. The container can run in fully air-gapped environments.
| Phase |
Network Required? |
Details |
| Image pull |
Yes (one-time) |
Pull from ECR or load from .tar.gz |
| Container runtime |
No |
Fully self-contained |
| Worker processes |
Blocked |
Network namespace isolation at kernel level |
| API access |
Localhost only |
Default bind 0.0.0.0:8090 (configurable) |
Ports
| Port |
Protocol |
Service |
Configurable |
8090 |
HTTP + WebSocket |
API Server + Command Center |
AEGIS_API_PORT |
8080 |
HTTP |
Documentation Server |
VEOX_DOCS_PORT |
SageMaker / Cloud Deployment Considerations
For deployments within managed ML environments (e.g., AWS SageMaker, Azure ML, GCP Vertex AI):
| Consideration |
Requirement |
| Instance type |
CPU-only (no GPU required). Recommended: ml.m5.xlarge (4 vCPU, 16 GB) or larger |
| Docker support |
Must support custom Docker images with OCI-compatible runtime |
| Persistent storage |
Optional: mount a volume at /app/scheduler_state for PostgreSQL WAL persistence across restarts |
| Network policy |
The container makes zero outbound connections. Inbound: port 8090 for API |
| IAM/Security |
No AWS API calls. No S3 access. No secrets manager integration required |
| Health check |
Built-in: GET http://localhost:8090/health (30s interval, 5s timeout) |
| Start time |
~15 seconds from container start to API ready |
| Memory |
Minimum 4 GB. Recommended 8-16 GB for large dataset processing |
Version Verification
To independently verify all versions from a running container:
# Python packages
docker exec veox-enclave python -c "
import importlib.metadata
for d in sorted(importlib.metadata.distributions(), key=lambda d: d.metadata['Name'].lower()):
print(f\"{d.metadata['Name']}=={d.metadata['Version']}\")
"
# System packages
docker exec veox-enclave bash -c "
echo 'OS:'; cat /etc/os-release | head -2
echo 'PostgreSQL:'; postgres --version
echo 'OpenSSL:'; openssl version
echo 'Python:'; python --version
echo 'tini:'; tini --version
"
Last verified: March 11, 2026 against veox-enclave-server:latest