Repository navigation
Releases: Theseus-Guard/ct-toolkit
Releases · Theseus-Guard/ct-toolkit
Release list
v0.4.3
Security
- Provenance log SQL injection — Fixed
ProvenanceLog._load_all_entriesbuilding the SQLiteLIMITclause by string interpolation. The limit is now bound as a query parameter (LIMIT ?) and coerced withint(). Flagged by CodeQL aspy/sql-injection(high severity, alert #50). Affectsget_entries(limit=...)on the SQLite backend.
Changed
- Capability cache untracked —
config/llm_capability.yamlis a runtime-generated startup cache and is now listed in.gitignoreand removed from version control. The file is still created locally by the wrapper on startup.
Validation
- Automated Tests:
426 passed, 3 skipped(uv run --locked --all-extras pytest tests).
Full Changelog: v0.4.2...v0.4.3
v0.4.2
Security
- Pillow — Locked
pillowto13.0.0, fixing 41 open Dependabot alerts (#77–#119, excluding #86 and #117), including critical heap overflows in FPX/JPEG decoding, TIFF encoder use-after-free, and Ghostscript argument injection (RCE), plus multiple decompression-bomb bypasses and DoS issues. - filelock — Locked
filelockto4.2.4, fixing Dependabot #120–#122 (SQLite lock-database symlink/journal handling, WindowsSoftFileLockoplock timeout,ReadWriteLockside-file issues). - setuptools — Locked
setuptoolsto84.2.1, fixing Dependabot #117 (Windows path escape vianamespace_packages.txt). - certifi — Locked
certifito2026.10.23, fixing Dependabot #86 (compromised emSign intermediate CA keys). - Dependency overrides —
[tool.uv] override-dependenciespinspillow>=13.0.0andfilelock>=4.2.1, because the latestfastembed(0.9.0) capspillow<13.0and the latestlitellm(1.106.3) capsfilelock<4.0. Remove the overrides once upstream releases relax these caps. Published package metadata is unchanged. - Known limitation for PyPI users — The overrides apply only to this repository's
uv.lock. Installs ofct-toolkit[ml](viafastembed) orct-toolkit[vision]resolve Pillow from PyPI metadata, so they can still receive Pillow 12.x (affected by the Pillow Dependabot alerts) untilfastembedrelaxes itspillow<13.0cap. Users who need the fix now can pinpillow>=13.0.0in their own environment after confirming theirfastembedsetup works with it. Filelock 4.x is similarly constrained bylitellmfor PyPI installs.
Validation
- Automated Tests:
426 passed, 3 skipped(uv run --locked --all-extras pytest tests). - Smoke Tests: FastEmbed embedding (
BAAI/bge-small-en-v1.5), LiteLLM import, FileLock acquire/release, and Pillow PNG roundtrip.
Full Changelog: v0.4.1...v0.4.2