george-silva/django-event-sourcing
50.3
Adequate · 22 September 2026
194
lines of production code
Python
primary language
6
measurements over time
What this system is
This system is a Python-based application that implements the event sourcing architectural pattern, utilizing Event and Aggregate models to manage state through a sequence of events. It provides a testable framework for handling order creation and status transitions, supported by a refactored dependency structure that explicitly relies on Django and modern testing tools.
Behavioural changes
Introduced Event and Aggregate models for event sourcing
The event\_sourcing module now includes Python classes for Event and Aggregate, supporting the event sourcing pattern. The Event class provides a simple key-value storage with equality checks and a persist method, while the Aggregate class manages a list of events and applies them during initialization. A utility function method\_dispatch is added to support single dispatch. Additionally, legacy static files (CSS, JS), templates, URLs, and views are removed, indicating a shift away from the previous implementation.
_event\sourcing · high confidence
Test coverage
Added tests for the event-sourcing aggregate implementation
Added new tests for the \Order\ aggregate class in \tests/test\_aggregates.py\, covering order creation, status changes, and multiple order instances. Removed the previous placeholder tests in \tests/test\_models.py\ and the unused \tests/urls.py\ file.
tests · high confidence
Dependencies
Updated Python dependency manifests
The project's dependency files have been refactored. The main requirements file now explicitly lists Django as a dependency. The development requirements file now includes the main requirements file and specifies versions for bumpversion and wheel. The test requirements file has been simplified to include the main requirements file and specific test packages (pytest, pytest-cov), removing older test dependencies like coverage, mock, flake8, tox, and codecov.
(dependencies) · medium confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 49 → 50 (+1.7)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 (new)
- Architecture 69 → 69 (+0.0)
- Maturity 29 → 36 (+7.4)
- Readiness 50 → 43 (-7.1)
- Security 98 → 99 (+0.8)
Resolved (9)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- High CVE: [GHSA redacted] (requirements_dev.txt)
- No exposed public API
- Test reliability not included
- complexity unreadable for .py — churn × complexity hotspots could not be measured
- early-stage repository — too little history to judge knowledge freshness
- git history depth insufficient
- single-maintainer — knowledge-concentration (bus factor) risk
New (5)
- Dependency hygiene PARTLY measured — Python dependencies read, no exact pin to grade for currency
- Documentation: no project overview (README.rst)
- High CVE: [GHSA redacted] (requirements_dev.txt)
- No ADRs found
- No dependency advisory monitoring
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
george-silva/django-event-sourcing was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 22 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 3e88eaa83c12e3550832e75cf1e74820fc40e64c — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-821afab8930d.