Repository navigation
LeaseLedger v0.1.0 — durable fenced job processing
What is included
A tested single-host, multi-process durable queue using Python and SQLite WAL:
- Atomic leases with fencing tokens that reject stale acknowledgements
- Idempotent submissions, delayed/prioritized scheduling, worker heartbeat
- Bounded exponential retries, persistent dead-letter jobs and an event journal
- CLI and trusted local Python handler interface
- 22 automated tests, including four separate OS processes claiming 48 jobs
- CI on Python 3.11, 3.12 and 3.13, Ruff lint/format and a measured benchmark smoke job
Reproducible setup
See README for install/CLI demo and docs/notes/why-fencing-tokens.md for the transaction and recovery reasoning.
Guarantees and limits
At-least-once, not exactly-once external effects. SQLite is a local single-host database, not a distributed consensus backend. The handlers run trusted local Python and are not sandboxed. Benchmarks report actual local measurements, not a production performance claim. This is an original engineering portfolio project rather than an existing deployed SaaS.