Release Notes — v0.5.3¶
Release Date: 2026-06-02
TaipanStack v0.5.3 focuses on security fixes for resource leak scenarios and decorator robustness, extensive resilience hardening under chaos injection, codebase-wide cyclomatic complexity reductions, and full 100% genuine code coverage certification across newly added resilience features. The consolidated test suite now verifies 1,344 passing tests with 100% genuine code and branch coverage.
🛡️ Security¶
- Fix (Medium) — Filesystem BaseException Leak: Fixed file descriptor leaks in
safe_writeonBaseExceptioninside the filesystem module (PR #838). - Hardening — Retry Decorator Fail-Fast: Implemented fail-fast validation for the retry decorator and reverted capturing of
BaseExceptionto prevent masking critical system interrupts (PR #852). - Hardening — Retry Decorator Type Mutation: Hardened retry decorator against type mutations under chaos injection (PR #853).
- Hardening — Fallback Decorator Type Mutation: Hardened fallback decorator against runtime type mutations under chaos (PR #842).
- Hardening — Circuit Breaker Chaos Resilience: Enhanced circuit breaker resilience to time and state mutations (PR #856, PR #839).
- Hardening — Fatal Exceptions sleep propagation: Allowed fatal system exceptions to propagate naturally during sleep inside retry decorator rather than masking them (PR #864).
- Fix — Pydantic models / mypy type binding: Resolved mypy type binding issues in models and format code with ruff (Direct commit).
🌊 Resilience & Watchdogs¶
- Hardening — Watchdogs chaos: Added chaos tests for watchdogs to improve logical robustness (PR #848).
- Hardening — ConfigWatcher chaos: Added chaos testing and resilience hardening for
ConfigWatcher(PR #860). - Hardening — Orchestrator fallbacks resource exhaustion: Added resource exhaustion tests for ResilienceOrchestrator fallbacks (PR #853).
⚡ Refactoring & Typing¶
- Complexity Refactor — Orchestrator: Proactively reduced cyclomatic and cognitive complexity in orchestrator and circuit breaker modules (PR #862, PR #844).
- Complexity Refactor — Utils and resilience: Proactively reduced cyclomatic complexity in utils/resilience modules and optimized collection type dispatch in
_redact_collection(PR #866). - Typing & Formatting — Ruff compliance: Broad static typing and formatting compliance refactor across core modules (PR #869).
✅ QA & Testing¶
- Test Coverage Expansion — guards: Achieved 100% genuine code and branch coverage on security
guards.py(PR #843). - Test Coverage Expansion — subprocess: Achieved 100% genuine code and branch coverage in
subprocess.py(PR #857). - Test Coverage Expansion — adaptive resilience: Achieved 100% genuine code and branch coverage for adaptive resilience components (PR #850).
- Caching — LRU eviction edge cases: Added tests for cache LRU eviction policy and edge conditions in
@cacheddecorator (PR #865). - Standardization — Naming conventions: Refactored and standardized test suite naming conventions (PR #847).
- Test Count: Standardized verified test suite at 1,344 passing tests with 100% genuine coverage.
📚 Documentation & CI/CD¶
- Link Corrections: Resolved dead compare links in CHANGELOG and docs/releases, and fixed dead markdown links across all documentation portals (PR #854, PR #851).
- Synchronization — Watchdogs examples: Synchronized
ConfigWatcherAPI constructor references and code examples in features guide (PR #867). - CI Badge Shields.io status format: Updated CI badges to use Shields.io status format in README and index.md (PR #863).